diff options
author | Yuchen Pei <hi@ypei.me> | 2021-10-15 09:52:00 +1100 |
---|---|---|
committer | Yuchen Pei <hi@ypei.me> | 2021-10-15 09:52:00 +1100 |
commit | 71b0e901f5fb1cfcd162d8acc23120d3f77a3152 (patch) | |
tree | 323c00faef1edc7dea2e88ff581cc2258b2b6432 /External/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php | |
parent | 72cce24864b064b5762f4fe97fdf40d8d2ad4b51 (diff) | |
parent | 07f5140771388c9e0c8a99b0dd2e5d950bdb173b (diff) |
Merge branch 'development' into h-node
Diffstat (limited to 'External/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php')
-rwxr-xr-x | External/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/External/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php b/External/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php new file mode 100755 index 0000000..0022f5e --- /dev/null +++ b/External/swiftmailer/lib/classes/Swift/Plugins/Reporters/HitReporter.php @@ -0,0 +1,63 @@ +<?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. + */ + +//@require 'Swift/Plugins/Reporter.php'; +//@require 'Swift/Mime/Message.php'; + +/** + * A reporter which "collects" failures for the Reporter plugin. + * @package Swift + * @subpackage Plugins + * @author Chris Corbyn + */ +class Swift_Plugins_Reporters_HitReporter implements Swift_Plugins_Reporter +{ + + /** + * The list of failures. + * @var array + * @access private + */ + private $_failures = array(); + private $_failures_cache = array(); + + /** + * Notifies this ReportNotifier that $address failed or succeeded. + * @param Swift_Mime_Message $message + * @param string $address + * @param int $result from {@link RESULT_PASS, RESULT_FAIL} + */ + public function notify(Swift_Mime_Message $message, $address, $result) + { + if (self::RESULT_FAIL == $result && !isset($this->_failures_cache[$address])) + { + $this->_failures[] = $address; + $this->_failures_cache[$address] = true; + } + } + + /** + * Get an array of addresses for which delivery failed. + * @return array + */ + public function getFailedRecipients() + { + return $this->_failures; + } + + /** + * Clear the buffer (empty the list). + */ + public function clear() + { + $this->_failures = $this->_failures_cache = array(); + } + +} |