diff options
Diffstat (limited to 'vendor/swiftmailer/classes/Swift/Plugins/Loggers')
-rw-r--r-- | vendor/swiftmailer/classes/Swift/Plugins/Loggers/ArrayLogger.php | 72 | ||||
-rw-r--r-- | vendor/swiftmailer/classes/Swift/Plugins/Loggers/EchoLogger.php | 58 |
2 files changed, 130 insertions, 0 deletions
diff --git a/vendor/swiftmailer/classes/Swift/Plugins/Loggers/ArrayLogger.php b/vendor/swiftmailer/classes/Swift/Plugins/Loggers/ArrayLogger.php new file mode 100644 index 00000000..f1739e8e --- /dev/null +++ b/vendor/swiftmailer/classes/Swift/Plugins/Loggers/ArrayLogger.php @@ -0,0 +1,72 @@ +<?php + +/* + * This file is part of SwiftMailer. + * (c) 2004-2009 Chris Corbyn + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +/** + * Logs to an Array backend. + * + * @author Chris Corbyn + */ +class Swift_Plugins_Loggers_ArrayLogger implements Swift_Plugins_Logger +{ + /** + * The log contents. + * + * @var array + */ + private $_log = array(); + + /** + * Max size of the log. + * + * @var int + */ + private $_size = 0; + + /** + * Create a new ArrayLogger with a maximum of $size entries. + * + * @var int $size + */ + public function __construct($size = 50) + { + $this->_size = $size; + } + + /** + * Add a log entry. + * + * @param string $entry + */ + public function add($entry) + { + $this->_log[] = $entry; + while (count($this->_log) > $this->_size) { + array_shift($this->_log); + } + } + + /** + * Clear the log contents. + */ + public function clear() + { + $this->_log = array(); + } + + /** + * Get this log as a string. + * + * @return string + */ + public function dump() + { + return implode(PHP_EOL, $this->_log); + } +} diff --git a/vendor/swiftmailer/classes/Swift/Plugins/Loggers/EchoLogger.php b/vendor/swiftmailer/classes/Swift/Plugins/Loggers/EchoLogger.php new file mode 100644 index 00000000..e8b6c18a --- /dev/null +++ b/vendor/swiftmailer/classes/Swift/Plugins/Loggers/EchoLogger.php @@ -0,0 +1,58 @@ +<?php + +/* + * This file is part of SwiftMailer. + * (c) 2004-2009 Chris Corbyn + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +/** + * Prints all log messages in real time. + * + * @author Chris Corbyn + */ +class Swift_Plugins_Loggers_EchoLogger implements Swift_Plugins_Logger +{ + /** Whether or not HTML should be output */ + private $_isHtml; + + /** + * Create a new EchoLogger. + * + * @param bool $isHtml + */ + public function __construct($isHtml = true) + { + $this->_isHtml = $isHtml; + } + + /** + * Add a log entry. + * + * @param string $entry + */ + public function add($entry) + { + if ($this->_isHtml) { + printf('%s%s%s', htmlspecialchars($entry, ENT_QUOTES), '<br />', PHP_EOL); + } else { + printf('%s%s', $entry, PHP_EOL); + } + } + + /** + * Not implemented. + */ + public function clear() + { + } + + /** + * Not implemented. + */ + public function dump() + { + } +} |