Code Duplication    Length = 21-23 lines in 2 locations

lib/classes/Swift/Transport/StreamBuffer.php 2 locations

@@ 182-202 (lines=21) @@
179
     *
180
     * @return string
181
     */
182
    public function readLine($sequence)
183
    {
184
        if (
185
            !isset($this->_out)
186
            ||
187
            feof($this->_out)
188
        ) {
189
          // TODO?
190
          return;
191
        }
192
193
        $line = fgets($this->_out);
194
        if (!$line) {
195
            $metas = stream_get_meta_data($this->_out);
196
            if ($metas['timed_out']) {
197
                throw new Swift_IoException('Connection to ' . $this->_getReadConnectionDescription() . ' Timed Out');
198
            }
199
        }
200
201
        return $line;
202
    }
203
204
    /**
205
     * Reads $length bytes from the stream into a string and moves the pointer
@@ 217-239 (lines=23) @@
214
     *
215
     * @return string|null
216
     */
217
    public function read($length)
218
    {
219
        if (
220
            !isset($this->_out)
221
            ||
222
            feof($this->_out)
223
        ) {
224
            // TODO?
225
            return;
226
        }
227
228
        $ret = fread($this->_out, $length);
229
        if (!$ret) {
230
            $metas = stream_get_meta_data($this->_out);
231
            if ($metas['timed_out']) {
232
                throw new Swift_IoException(
233
                    'Connection to ' . $this->_getReadConnectionDescription() . ' Timed Out'
234
                );
235
            }
236
        }
237
238
        return $ret;
239
    }
240
241
    /**
242
     * WARNING: Not implemented