Subversion Repositories php-qbpwcf

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
3 liveuser 1
<?php
2
 
3
namespace React\Tests\Stream\Stub;
4
 
5
use Evenement\EventEmitter;
6
use React\Stream\ReadableStreamInterface;
7
use React\Stream\WritableStreamInterface;
8
use React\Stream\Util;
9
 
10
class ReadableStreamStub extends EventEmitter implements ReadableStreamInterface
11
{
12
    public $readable = true;
13
    public $paused = false;
14
 
15
    public function isReadable()
16
    {
17
        return true;
18
    }
19
 
20
    // trigger data event
21
    public function write($data)
22
    {
23
        $this->emit('data', array($data));
24
    }
25
 
26
    // trigger error event
27
    public function error($error)
28
    {
29
        $this->emit('error', array($error));
30
    }
31
 
32
    // trigger end event
33
    public function end()
34
    {
35
        $this->emit('end', array());
36
    }
37
 
38
    public function pause()
39
    {
40
        $this->paused = true;
41
    }
42
 
43
    public function resume()
44
    {
45
        $this->paused = false;
46
    }
47
 
48
    public function close()
49
    {
50
        $this->readable = false;
51
 
52
        $this->emit('close');
53
    }
54
 
55
    public function pipe(WritableStreamInterface $dest, array $options = array())
56
    {
57
        Util::pipe($this, $dest, $options);
58
 
59
        return $dest;
60
    }
61
}