TYPO3 API  SVNRelease
EsmtpHandler.php
Go to the documentation of this file.
00001 <?php
00002 
00003 /*
00004  * This file is part of SwiftMailer.
00005  * (c) 2004-2009 Chris Corbyn
00006  *
00007  * For the full copyright and license information, please view the LICENSE
00008  * file that was distributed with this source code.
00009  */
00010 
00011 //@require 'Swift/Transport/EsmtpBufferWrapper.php';
00012 
00013 /**
00014  * An ESMTP handler.
00015  * @package Swift
00016  * @subpackage Transport
00017  * @author Chris Corbyn
00018  */
00019 interface Swift_Transport_EsmtpHandler
00020 {
00021 
00022   /**
00023    * Get the name of the ESMTP extension this handles.
00024    * @return boolean
00025    */
00026   public function getHandledKeyword();
00027 
00028   /**
00029    * Set the parameters which the EHLO greeting indicated.
00030    * @param string[] $parameters
00031    */
00032   public function setKeywordParams(array $parameters);
00033 
00034   /**
00035    * Runs immediately after a EHLO has been issued.
00036    * @param Swift_Transport_SmtpAgent $agent to read/write
00037    */
00038   public function afterEhlo(Swift_Transport_SmtpAgent $agent);
00039 
00040   /**
00041    * Get params which are appended to MAIL FROM:<>.
00042    * @return string[]
00043    */
00044   public function getMailParams();
00045 
00046   /**
00047    * Get params which are appended to RCPT TO:<>.
00048    * @return string[]
00049    */
00050   public function getRcptParams();
00051 
00052   /**
00053    * Runs when a command is due to be sent.
00054    * @param Swift_Transport_SmtpAgent $agent to read/write
00055    * @param string $command to send
00056    * @param int[] $codes expected in response
00057    * @param string[] &$failedRecipients
00058    * @param boolean &$stop to be set true if the command is now sent
00059    */
00060   public function onCommand(Swift_Transport_SmtpAgent $agent,
00061     $command, $codes = array(), &$failedRecipients = null, &$stop = false);
00062 
00063   /**
00064    * Returns +1, -1 or 0 according to the rules for usort().
00065    * This method is called to ensure extensions can be execute in an appropriate order.
00066    * @param string $esmtpKeyword to compare with
00067    * @return int
00068    */
00069   public function getPriorityOver($esmtpKeyword);
00070 
00071   /**
00072    * Returns an array of method names which are exposed to the Esmtp class.
00073    * @return string[]
00074    */
00075   public function exposeMixinMethods();
00076 
00077   /**
00078    * Tells this handler to clear any buffers and reset its state.
00079    */
00080   public function resetState();
00081 
00082 }