@@ 233-259 (lines=27) @@ | ||
230 | * |
|
231 | * @internal |
|
232 | */ |
|
233 | public function handleWrite() |
|
234 | { |
|
235 | $text = $this->buffer->peek(); |
|
236 | $sent = fwrite($this->resource, $text, $this->bufferSize); |
|
237 | ||
238 | if ($sent === false) |
|
239 | { |
|
240 | $this->emit('error', [ $this, new WriteException('Error occurred while writing to the stream resource.') ]); |
|
241 | return; |
|
242 | } |
|
243 | ||
244 | $lenBefore = strlen($text); |
|
245 | $lenAfter = $lenBefore - $sent; |
|
246 | $this->buffer->remove($sent); |
|
247 | ||
248 | if ($lenAfter > 0 && $lenBefore >= $this->bufferSize && $lenAfter < $this->bufferSize) |
|
249 | { |
|
250 | $this->emit('drain', [ $this ]); |
|
251 | } |
|
252 | else if ($lenAfter === 0) |
|
253 | { |
|
254 | $this->loop->removeWriteStream($this->resource); |
|
255 | $this->writing = false; |
|
256 | $this->emit('drain', [ $this ]); |
|
257 | $this->emit('finish', [ $this ]); |
|
258 | } |
|
259 | } |
|
260 | ||
261 | /** |
|
262 | * Handle the incoming stream. |
@@ 181-207 (lines=27) @@ | ||
178 | * |
|
179 | * @internal |
|
180 | */ |
|
181 | public function handleWrite() |
|
182 | { |
|
183 | $text = $this->buffer->peek(); |
|
184 | $sent = fwrite($this->resource, $text, $this->bufferSize); |
|
185 | ||
186 | if ($sent === false) |
|
187 | { |
|
188 | $this->emit('error', [ $this, new WriteException('Error occurred while writing to the stream resource.') ]); |
|
189 | return; |
|
190 | } |
|
191 | ||
192 | $lenBefore = strlen($text); |
|
193 | $lenAfter = $lenBefore - $sent; |
|
194 | $this->buffer->remove($sent); |
|
195 | ||
196 | if ($lenAfter > 0 && $lenBefore >= $this->bufferSize && $lenAfter < $this->bufferSize) |
|
197 | { |
|
198 | $this->emit('drain', [ $this ]); |
|
199 | } |
|
200 | else if ($lenAfter === 0) |
|
201 | { |
|
202 | $this->loop->removeWriteStream($this->resource); |
|
203 | $this->writing = false; |
|
204 | $this->emit('drain', [ $this ]); |
|
205 | $this->emit('finish', [ $this ]); |
|
206 | } |
|
207 | } |
|
208 | ||
209 | /** |
|
210 | * Handle close. |