Code Duplication    Length = 34-34 lines in 2 locations

src/Stream/Sync/Stream.php 1 location

@@ 121-154 (lines=34) @@
118
     * @override
119
     * @inheritDoc
120
     */
121
    public function read($length = null)
122
    {
123
        if (!$this->readable)
124
        {
125
            return $this->throwAndEmitException(
126
                new ReadException('Stream is no longer readable.')
127
            );
128
        }
129
130
        if ($length === null)
131
        {
132
            $length = $this->bufferSize;
133
        }
134
135
        $ret = fread($this->resource, $length);
136
137
        if ($ret === false)
138
        {
139
            return $this->throwAndEmitException(
140
                new ReadException('Cannot read stream.')
141
            );
142
        }
143
        else if ($ret !== '')
144
        {
145
            $this->emit('data', [ $this, $ret ]);
146
147
            if (strlen($ret) < $length)
148
            {
149
                $this->emit('end', [ $this ]);
150
            }
151
        }
152
153
        return $ret;
154
    }
155
156
    /**
157
     * @override

src/Stream/Sync/StreamReader.php 1 location

@@ 76-109 (lines=34) @@
73
     * @override
74
     * @inheritDoc
75
     */
76
    public function read($length = null)
77
    {
78
        if (!$this->readable)
79
        {
80
            return $this->throwAndEmitException(
81
                new ReadException('Stream is no longer readable.')
82
            );
83
        }
84
85
        if ($length === null)
86
        {
87
            $length = $this->bufferSize;
88
        }
89
90
        $ret = fread($this->resource, $length);
91
92
        if ($ret === false)
93
        {
94
            return $this->throwAndEmitException(
95
                new ReadException('Cannot read stream.')
96
            );
97
        }
98
        else if ($ret !== '')
99
        {
100
            $this->emit('data', [ $this, $ret ]);
101
102
            if (strlen($ret) < $length)
103
            {
104
                $this->emit('end', [ $this ]);
105
            }
106
        }
107
108
        return $ret;
109
    }
110
111
    /**
112
     * @override