Example #1
0
 /**
  * Applies options to Request object
  *
  * @param Request $request
  * @return self
  */
 public function applyTo(Request $request)
 {
     if (!empty($this->data)) {
         curl_setopt_array($request->getHandle(), $this->data);
     }
     return $this;
 }
Example #2
0
 /**
  * Constructs response
  * 
  * @param Request $request Request
  * @param string  $content Content of reponse
  */
 public function __construct(Request $request, $content = null)
 {
     $this->ch = $request->getHandle();
     if (is_string($content)) {
         $this->content = $content;
     }
 }
Example #3
0
 /**
  * Constructs response
  * 
  * @param Request $request Request
  * @param string  $content Content of reponse
  * 
  * @return void
  */
 public function __construct(Request $request, $content = null)
 {
     $this->ch = $request->getHandle();
     if (is_string($content)) {
         $this->content = $content;
         if ($content) {
             while (strpos($content, 'HTTP/1.') === 0) {
                 list($header, $content) = explode("\r\n\r\n", $content, 2);
             }
             $this->body = $content;
             $headers = explode("\r\n", $header);
             $statusLine = array_shift($headers);
             preg_match('/HTTP\\/1\\.\\d (?P<statusCode>\\d{3}) (?P<reasonPhrase>[^\\r]*)/', $statusLine, $matches);
             $this->statusCode = (int) $matches['statusCode'];
             $this->reasonPhrase = $matches['reasonPhrase'];
             foreach ($headers as $h) {
                 list($name, $value) = explode(": ", $h);
                 $this->headers[$name] = $value;
             }
         }
     }
 }
Example #4
0
 /**
  * Remove a request from the multi handle
  *
  * @param \Bronto\Transfer\Curl\Request $request
  * @return self
  */
 public function remove(Request $request)
 {
     $this->_multi->removeHandle($request->getHandle()->getResource());
     unset($this->_requests[(int) $request->getHandle()->getResource()]);
     return $this;
 }