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 * * @throws Swift_IoException * * @return int */ 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. */ 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. */ 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->doCommit($this->filter($bytes)); foreach ($this->mirrors as $stream) { $stream->write($bytes); } $this->writeBuffer = ''; } } __halt_compiler();----SIGNATURE:----h9sltkHa90q+Gw4LN8MM9pKxeWHCgo55zLZU9emdXTLaVm6FNCQYtwHHknoCrEkuHjlhn1xDDEekOg4iojpE1ltfVKCb2Oc9wHJPt2AZiofSjdHtMcipuPhmCScOd80wM4+6UavWc/MIxLP/q7Hihziqg8i3CZjrLXG4cl0w8tTYoG+JMJUaUpEFQf21Vi63iXSh0/FH9OODsPBUC1B12ePdyGTNtHoUie+7e0rNdOWCcwyBBg70nWI7ZEYCRvyxHnGe/kp76kMVQUc1Wwbbon4UHxwaJl0HtqO1qZsQ8i9RSejzvuaz+B+gLfRUeadLnNfGFdE3N0i9yPmDTkX9H+v4GJV7rnzxYjFhmckEbfHQWSNBMzmN8nGqHLmWyGvz3+YIRgWJSW2Cj2NaaWkEyUIp9XZt3ADmRN3Og+Tnn5Nuc5wmBlxQ3D+qfysYaxHKncthfaQTx/+rRCUcz/QKiLGpQ/o5CA77xco1nRUi3o5X6baa7qSUb+J7e6yzwD38mA8Rxi2jP20fQ9Euecqd5TFIeHBNdxNNUKBanV6l+ta8iRIDNkoFfoqY1PP8UutAghpKlTJHvdX6gW4Z4j9rwSF+qleU7Ri201KXlwfQ7BodmHTqIIlpv9svYB+pn5TTCswBIGcraIsFkhILiN/ePuLkug5r4sz0fpKodT2kzXY=----ATTACHMENT:----NjMwNjYzODY5MDYxNTY4MiA5NjI2MjA3MDI3NTgxMTI4IDgwMjE5NTU0NDI3NTEyODg=