diff options
Diffstat (limited to 'vendor/swiftmailer/classes/Swift/ByteStream')
4 files changed, 0 insertions, 634 deletions
diff --git a/vendor/swiftmailer/classes/Swift/ByteStream/AbstractFilterableInputStream.php b/vendor/swiftmailer/classes/Swift/ByteStream/AbstractFilterableInputStream.php deleted file mode 100644 index 3e597d17..00000000 --- a/vendor/swiftmailer/classes/Swift/ByteStream/AbstractFilterableInputStream.php +++ /dev/null @@ -1,179 +0,0 @@ -<?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. - */ - -/** - * Provides the base functionality for an InputStream supporting filters. - * - * @author Chris Corbyn - */ -abstract class Swift_ByteStream_AbstractFilterableInputStream implements Swift_InputByteStream, Swift_Filterable -{ - /** - * Write sequence. - */ - protected $_sequence = 0; - - /** - * StreamFilters. - */ - private $_filters = array(); - - /** - * A buffer for writing. - */ - private $_writeBuffer = ''; - - /** - * Bound streams. - * - * @var Swift_InputByteStream[] - */ - private $_mirrors = array(); - - /** - * Commit the given bytes to the storage medium immediately. - * - * @param string $bytes - */ - abstract protected function _commit($bytes); - - /** - * Flush any buffers/content with immediate effect. - */ - abstract protected function _flush(); - - /** - * Add a StreamFilter to this InputByteStream. - * - * @param Swift_StreamFilter $filter - * @param string $key - */ - public function addFilter(Swift_StreamFilter $filter, $key) - { - $this->_filters[$key] = $filter; - } - - /** - * Remove an already present StreamFilter based on its $key. - * - * @param string $key - */ - public function removeFilter($key) - { - unset($this->_filters[$key]); - } - - /** - * Writes $bytes to the end of the stream. - * - * @param string $bytes - * - * @return int - * - * @throws Swift_IoException - */ - public function write($bytes) - { - $this->_writeBuffer .= $bytes; - foreach ($this->_filters as $filter) { - if ($filter->shouldBuffer($this->_writeBuffer)) { - return; - } - } - $this->_doWrite($this->_writeBuffer); - - return ++$this->_sequence; - } - - /** - * For any bytes that are currently buffered inside the stream, force them - * off the buffer. - * - * @throws Swift_IoException - */ - public function commit() - { - $this->_doWrite($this->_writeBuffer); - } - - /** - * Attach $is to this stream. - * - * The stream acts as an observer, receiving all data that is written. - * All {@link write()} and {@link flushBuffers()} operations will be mirrored. - * - * @param Swift_InputByteStream $is - */ - public function bind(Swift_InputByteStream $is) - { - $this->_mirrors[] = $is; - } - - /** - * Remove an already bound stream. - * - * If $is is not bound, no errors will be raised. - * If the stream currently has any buffered data it will be written to $is - * before unbinding occurs. - * - * @param Swift_InputByteStream $is - */ - public function unbind(Swift_InputByteStream $is) - { - foreach ($this->_mirrors as $k => $stream) { - if ($is === $stream) { - if ($this->_writeBuffer !== '') { - $stream->write($this->_writeBuffer); - } - unset($this->_mirrors[$k]); - } - } - } - - /** - * Flush the contents of the stream (empty it) and set the internal pointer - * to the beginning. - * - * @throws Swift_IoException - */ - public function flushBuffers() - { - if ($this->_writeBuffer !== '') { - $this->_doWrite($this->_writeBuffer); - } - $this->_flush(); - - foreach ($this->_mirrors as $stream) { - $stream->flushBuffers(); - } - } - - /** Run $bytes through all filters */ - private function _filter($bytes) - { - foreach ($this->_filters as $filter) { - $bytes = $filter->filter($bytes); - } - - return $bytes; - } - - /** Just write the bytes to the stream */ - private function _doWrite($bytes) - { - $this->_commit($this->_filter($bytes)); - - foreach ($this->_mirrors as $stream) { - $stream->write($bytes); - } - - $this->_writeBuffer = ''; - } -} diff --git a/vendor/swiftmailer/classes/Swift/ByteStream/ArrayByteStream.php b/vendor/swiftmailer/classes/Swift/ByteStream/ArrayByteStream.php deleted file mode 100644 index 043a5179..00000000 --- a/vendor/swiftmailer/classes/Swift/ByteStream/ArrayByteStream.php +++ /dev/null @@ -1,184 +0,0 @@ -<?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. - */ - -/** - * Allows reading and writing of bytes to and from an array. - * - * @author Chris Corbyn - */ -class Swift_ByteStream_ArrayByteStream implements Swift_InputByteStream, Swift_OutputByteStream -{ - /** - * The internal stack of bytes. - * - * @var string[] - */ - private $_array = array(); - - /** - * The size of the stack - * - * @var int - */ - private $_arraySize = 0; - - /** - * The internal pointer offset. - * - * @var int - */ - private $_offset = 0; - - /** - * Bound streams. - * - * @var Swift_InputByteStream[] - */ - private $_mirrors = array(); - - /** - * Create a new ArrayByteStream. - * - * If $stack is given the stream will be populated with the bytes it contains. - * - * @param mixed $stack of bytes in string or array form, optional - */ - public function __construct($stack = null) - { - if (is_array($stack)) { - $this->_array = $stack; - $this->_arraySize = count($stack); - } elseif (is_string($stack)) { - $this->write($stack); - } else { - $this->_array = array(); - } - } - - /** - * Reads $length bytes from the stream into a string and moves the pointer - * through the stream by $length. - * - * If less bytes exist than are requested the - * remaining bytes are given instead. If no bytes are remaining at all, boolean - * false is returned. - * - * @param int $length - * - * @return string - */ - public function read($length) - { - if ($this->_offset == $this->_arraySize) { - return false; - } - - // Don't use array slice - $end = $length + $this->_offset; - $end = $this->_arraySize<$end - ?$this->_arraySize - :$end; - $ret = ''; - for (; $this->_offset < $end; ++$this->_offset) { - $ret .= $this->_array[$this->_offset]; - } - - return $ret; - } - - /** - * Writes $bytes to the end of the stream. - * - * @param string $bytes - */ - public function write($bytes) - { - $to_add = str_split($bytes); - foreach ($to_add as $value) { - $this->_array[] = $value; - } - $this->_arraySize = count($this->_array); - - foreach ($this->_mirrors as $stream) { - $stream->write($bytes); - } - } - - /** - * Not used. - */ - public function commit() - { - } - - /** - * Attach $is to this stream. - * - * The stream acts as an observer, receiving all data that is written. - * All {@link write()} and {@link flushBuffers()} operations will be mirrored. - * - * @param Swift_InputByteStream $is - */ - public function bind(Swift_InputByteStream $is) - { - $this->_mirrors[] = $is; - } - - /** - * Remove an already bound stream. - * - * If $is is not bound, no errors will be raised. - * If the stream currently has any buffered data it will be written to $is - * before unbinding occurs. - * - * @param Swift_InputByteStream $is - */ - public function unbind(Swift_InputByteStream $is) - { - foreach ($this->_mirrors as $k => $stream) { - if ($is === $stream) { - unset($this->_mirrors[$k]); - } - } - } - - /** - * Move the internal read pointer to $byteOffset in the stream. - * - * @param int $byteOffset - * - * @return bool - */ - public function setReadPointer($byteOffset) - { - if ($byteOffset > $this->_arraySize) { - $byteOffset = $this->_arraySize; - } elseif ($byteOffset < 0) { - $byteOffset = 0; - } - - $this->_offset = $byteOffset; - } - - /** - * Flush the contents of the stream (empty it) and set the internal pointer - * to the beginning. - */ - public function flushBuffers() - { - $this->_offset = 0; - $this->_array = array(); - $this->_arraySize = 0; - - foreach ($this->_mirrors as $stream) { - $stream->flushBuffers(); - } - } -} diff --git a/vendor/swiftmailer/classes/Swift/ByteStream/FileByteStream.php b/vendor/swiftmailer/classes/Swift/ByteStream/FileByteStream.php deleted file mode 100644 index 9f3218f7..00000000 --- a/vendor/swiftmailer/classes/Swift/ByteStream/FileByteStream.php +++ /dev/null @@ -1,229 +0,0 @@ -<?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. - */ - -/** - * Allows reading and writing of bytes to and from a file. - * - * @author Chris Corbyn - */ -class Swift_ByteStream_FileByteStream extends Swift_ByteStream_AbstractFilterableInputStream implements Swift_FileStream -{ - /** The internal pointer offset */ - private $_offset = 0; - - /** The path to the file */ - private $_path; - - /** The mode this file is opened in for writing */ - private $_mode; - - /** A lazy-loaded resource handle for reading the file */ - private $_reader; - - /** A lazy-loaded resource handle for writing the file */ - private $_writer; - - /** If magic_quotes_runtime is on, this will be true */ - private $_quotes = false; - - /** If stream is seekable true/false, or null if not known */ - private $_seekable = null; - - /** - * Create a new FileByteStream for $path. - * - * @param string $path - * @param bool $writable if true - */ - public function __construct($path, $writable = false) - { - if (empty($path)) { - throw new Swift_IoException('The path cannot be empty'); - } - $this->_path = $path; - $this->_mode = $writable ? 'w+b' : 'rb'; - - if (function_exists('get_magic_quotes_runtime') && @get_magic_quotes_runtime() == 1) { - $this->_quotes = true; - } - } - - /** - * Get the complete path to the file. - * - * @return string - */ - public function getPath() - { - return $this->_path; - } - - /** - * Reads $length bytes from the stream into a string and moves the pointer - * through the stream by $length. - * - * If less bytes exist than are requested the - * remaining bytes are given instead. If no bytes are remaining at all, boolean - * false is returned. - * - * @param int $length - * - * @return string|bool - * - * @throws Swift_IoException - */ - public function read($length) - { - $fp = $this->_getReadHandle(); - if (!feof($fp)) { - if ($this->_quotes) { - ini_set('magic_quotes_runtime', 0); - } - $bytes = fread($fp, $length); - if ($this->_quotes) { - ini_set('magic_quotes_runtime', 1); - } - $this->_offset = ftell($fp); - - // If we read one byte after reaching the end of the file - // feof() will return false and an empty string is returned - if ($bytes === '' && feof($fp)) { - $this->_resetReadHandle(); - - return false; - } - - return $bytes; - } - - $this->_resetReadHandle(); - - return false; - } - - /** - * Move the internal read pointer to $byteOffset in the stream. - * - * @param int $byteOffset - * - * @return bool - */ - public function setReadPointer($byteOffset) - { - if (isset($this->_reader)) { - $this->_seekReadStreamToPosition($byteOffset); - } - $this->_offset = $byteOffset; - } - - /** Just write the bytes to the file */ - protected function _commit($bytes) - { - fwrite($this->_getWriteHandle(), $bytes); - $this->_resetReadHandle(); - } - - /** Not used */ - protected function _flush() - { - } - - /** Get the resource for reading */ - private function _getReadHandle() - { - if (!isset($this->_reader)) { - if (!$this->_reader = fopen($this->_path, 'rb')) { - throw new Swift_IoException( - 'Unable to open file for reading [' . $this->_path . ']' - ); - } - if ($this->_offset <> 0) { - $this->_getReadStreamSeekableStatus(); - $this->_seekReadStreamToPosition($this->_offset); - } - } - - return $this->_reader; - } - - /** Get the resource for writing */ - private function _getWriteHandle() - { - if (!isset($this->_writer)) { - if (!$this->_writer = fopen($this->_path, $this->_mode)) { - throw new Swift_IoException( - 'Unable to open file for writing [' . $this->_path . ']' - ); - } - } - - return $this->_writer; - } - - /** Force a reload of the resource for reading */ - private function _resetReadHandle() - { - if (isset($this->_reader)) { - fclose($this->_reader); - $this->_reader = null; - } - } - - /** Check if ReadOnly Stream is seekable */ - private function _getReadStreamSeekableStatus() - { - $metas = stream_get_meta_data($this->_reader); - $this->_seekable = $metas['seekable']; - } - - /** Streams in a readOnly stream ensuring copy if needed */ - private function _seekReadStreamToPosition($offset) - { - if ($this->_seekable===null) { - $this->_getReadStreamSeekableStatus(); - } - if ($this->_seekable === false) { - $currentPos = ftell($this->_reader); - if ($currentPos<$offset) { - $toDiscard = $offset-$currentPos; - fread($this->_reader, $toDiscard); - - return; - } - $this->_copyReadStream(); - } - fseek($this->_reader, $offset, SEEK_SET); - } - - /** Copy a readOnly Stream to ensure seekability */ - private function _copyReadStream() - { - if ($tmpFile = fopen('php://temp/maxmemory:4096', 'w+b')) { - /* We have opened a php:// Stream Should work without problem */ - } elseif (function_exists('sys_get_temp_dir') && is_writable(sys_get_temp_dir()) && ($tmpFile = tmpfile())) { - /* We have opened a tmpfile */ - } else { - throw new Swift_IoException('Unable to copy the file to make it seekable, sys_temp_dir is not writable, php://memory not available'); - } - $currentPos = ftell($this->_reader); - fclose($this->_reader); - $source = fopen($this->_path, 'rb'); - if (!$source) { - throw new Swift_IoException('Unable to open file for copying [' . $this->_path . ']'); - } - fseek($tmpFile, 0, SEEK_SET); - while (!feof($source)) { - fwrite($tmpFile, fread($source, 4096)); - } - fseek($tmpFile, $currentPos, SEEK_SET); - fclose($source); - $this->_reader = $tmpFile; - } -} diff --git a/vendor/swiftmailer/classes/Swift/ByteStream/TemporaryFileByteStream.php b/vendor/swiftmailer/classes/Swift/ByteStream/TemporaryFileByteStream.php deleted file mode 100644 index eb33151b..00000000 --- a/vendor/swiftmailer/classes/Swift/ByteStream/TemporaryFileByteStream.php +++ /dev/null @@ -1,42 +0,0 @@ -<?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. -*/ - -/** - * @author Romain-Geissler - */ -class Swift_ByteStream_TemporaryFileByteStream extends Swift_ByteStream_FileByteStream -{ - public function __construct() - { - $filePath = tempnam(sys_get_temp_dir(), 'FileByteStream'); - - if ($filePath === false) { - throw new Swift_IoException('Failed to retrieve temporary file name.'); - } - - parent::__construct($filePath, true); - } - - public function getContent() - { - if (($content = file_get_contents($this->getPath())) === false) { - throw new Swift_IoException('Failed to get temporary file content.'); - } - - return $content; - } - - public function __destruct() - { - if (file_exists($this->getPath())) { - @unlink($this->getPath()); - } - } -} |