| @@ 31-43 (lines=13) @@ | ||
| 28 | * @param resource $ch |
|
| 29 | * @param Deferred $deferred |
|
| 30 | */ |
|
| 31 | public function add($ch, Deferred $deferred = null) |
|
| 32 | { |
|
| 33 | $errno = curl_multi_add_handle($this->mh, $ch); |
|
| 34 | if ($errno !== CURLM_OK) { |
|
| 35 | // @codeCoverageIgnoreStart |
|
| 36 | $msg = curl_multi_strerror($errno) . ": $ch"; |
|
| 37 | $deferred && $deferred->reject(new \RuntimeException($msg)); |
|
| 38 | return; |
|
| 39 | // @codeCoverageIgnoreEnd |
|
| 40 | } |
|
| 41 | $this->added[(string)$ch] = $ch; |
|
| 42 | $deferred && $this->deferreds[(string)$ch] = $deferred; |
|
| 43 | } |
|
| 44 | ||
| 45 | /** |
|
| 46 | * Are there no cURL handles? |
|
| @@ 60-73 (lines=14) @@ | ||
| 57 | * @param resource $ch |
|
| 58 | * @param Deferred $deferred |
|
| 59 | */ |
|
| 60 | private function addImmediate($ch, Deferred $deferred = null) |
|
| 61 | { |
|
| 62 | $errno = curl_multi_add_handle($this->mh, $ch); |
|
| 63 | if ($errno !== CURLM_OK) { |
|
| 64 | // @codeCoverageIgnoreStart |
|
| 65 | $msg = curl_multi_strerror($errno) . ": $ch"; |
|
| 66 | $deferred && $deferred->reject(new \RuntimeException($msg)); |
|
| 67 | return; |
|
| 68 | // @codeCoverageIgnoreEnd |
|
| 69 | } |
|
| 70 | $this->added[(string)$ch] = $ch; |
|
| 71 | $this->counter->addDestination($ch); |
|
| 72 | $deferred && $this->deferreds[(string)$ch] = $deferred; |
|
| 73 | } |
|
| 74 | ||
| 75 | /** |
|
| 76 | * Push into queue. |
|