|
TYPO3 API
SVNRelease
|
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/InputByteStream.php'; 00012 //@require 'Swift/OutputByteStream.php'; 00013 00014 /** 00015 * Buffers input and output to a resource. 00016 * @package Swift 00017 * @subpackage Transport 00018 * @author Chris Corbyn 00019 */ 00020 interface Swift_Transport_IoBuffer 00021 extends Swift_InputByteStream, Swift_OutputByteStream 00022 { 00023 00024 /** A socket buffer over TCP */ 00025 const TYPE_SOCKET = 0x0001; 00026 00027 /** A process buffer with I/O support */ 00028 const TYPE_PROCESS = 0x0010; 00029 00030 /** 00031 * Perform any initialization needed, using the given $params. 00032 * Parameters will vary depending upon the type of IoBuffer used. 00033 * @param array $params 00034 */ 00035 public function initialize(array $params); 00036 00037 /** 00038 * Set an individual param on the buffer (e.g. switching to SSL). 00039 * @param string $param 00040 * @param mixed $value 00041 */ 00042 public function setParam($param, $value); 00043 00044 /** 00045 * Perform any shutdown logic needed. 00046 */ 00047 public function terminate(); 00048 00049 /** 00050 * Set an array of string replacements which should be made on data written 00051 * to the buffer. This could replace LF with CRLF for example. 00052 * @param string[] $replacements 00053 */ 00054 public function setWriteTranslations(array $replacements); 00055 00056 /** 00057 * Get a line of output (including any CRLF). 00058 * The $sequence number comes from any writes and may or may not be used 00059 * depending upon the implementation. 00060 * @param int $sequence of last write to scan from 00061 * @return string 00062 */ 00063 public function readLine($sequence); 00064 00065 }
1.8.0