1
|
|
|
<?php |
2
|
|
|
|
3
|
|
|
/* |
4
|
|
|
* This file is part of SwiftMailer. |
5
|
|
|
* (c) 2004-2009 Chris Corbyn |
6
|
|
|
* |
7
|
|
|
* For the full copyright and license information, please view the LICENSE |
8
|
|
|
* file that was distributed with this source code. |
9
|
|
|
*/ |
10
|
|
|
|
11
|
|
|
/** |
12
|
|
|
* An abstract means of writing data. |
13
|
|
|
* |
14
|
|
|
* Classes implementing this interface may use a subsystem which requires less |
15
|
|
|
* memory than working with large strings of data. |
16
|
|
|
* |
17
|
|
|
* @author Chris Corbyn |
18
|
|
|
*/ |
19
|
|
|
interface Swift_InputByteStream |
|
|
|
|
20
|
|
|
{ |
21
|
|
|
/** |
22
|
|
|
* Writes $bytes to the end of the stream. |
23
|
|
|
* |
24
|
|
|
* Writing may not happen immediately if the stream chooses to buffer. If |
25
|
|
|
* you want to write these bytes with immediate effect, call {@link commit()} |
26
|
|
|
* after calling write(). |
27
|
|
|
* |
28
|
|
|
* This method returns the sequence ID of the write (i.e. 1 for first, 2 for |
29
|
|
|
* second, etc etc). |
30
|
|
|
* |
31
|
|
|
* @param string $bytes |
32
|
|
|
* |
33
|
|
|
* @throws Swift_IoException |
34
|
|
|
* |
35
|
|
|
* @return int |
36
|
|
|
*/ |
37
|
|
|
public function write($bytes); |
38
|
|
|
|
39
|
|
|
/** |
40
|
|
|
* For any bytes that are currently buffered inside the stream, force them |
41
|
|
|
* off the buffer. |
42
|
|
|
* |
43
|
|
|
* @throws Swift_IoException |
44
|
|
|
*/ |
45
|
|
|
public function commit(); |
46
|
|
|
|
47
|
|
|
/** |
48
|
|
|
* Attach $is to this stream. |
49
|
|
|
* |
50
|
|
|
* The stream acts as an observer, receiving all data that is written. |
51
|
|
|
* All {@link write()} and {@link flushBuffers()} operations will be mirrored. |
52
|
|
|
* |
53
|
|
|
* @param Swift_InputByteStream $is |
54
|
|
|
*/ |
55
|
|
|
public function bind(Swift_InputByteStream $is); |
56
|
|
|
|
57
|
|
|
/** |
58
|
|
|
* Remove an already bound stream. |
59
|
|
|
* |
60
|
|
|
* If $is is not bound, no errors will be raised. |
61
|
|
|
* If the stream currently has any buffered data it will be written to $is |
62
|
|
|
* before unbinding occurs. |
63
|
|
|
* |
64
|
|
|
* @param Swift_InputByteStream $is |
65
|
|
|
*/ |
66
|
|
|
public function unbind(Swift_InputByteStream $is); |
67
|
|
|
|
68
|
|
|
/** |
69
|
|
|
* Flush the contents of the stream (empty it) and set the internal pointer |
70
|
|
|
* to the beginning. |
71
|
|
|
*/ |
72
|
|
|
public function flushBuffers(); |
73
|
|
|
} |
74
|
|
|
|
You can fix this by adding a namespace to your class:
When choosing a vendor namespace, try to pick something that is not too generic to avoid conflicts with other libraries.