Example #1
0
 /**
  * @param CurlWrapper $curl
  *
  * @return Response
  */
 protected function buildResponse(CurlWrapper $curl)
 {
     if ($this->queriedRequest->method === Request::DOWNLOAD) {
         $headers = FileResponse::stripHeaders($curl);
         if ($previous = $this->buildRedirectResponse($curl)) {
             $headers = CurlWrapper::parseHeaders($curl->responseHeaders);
         }
         $response = new FileResponse($curl, $headers);
         $response->setPrevious($previous);
         return $response;
     }
     $headers = Response::stripHeaders($curl);
     if ($previous = $this->buildRedirectResponse($curl)) {
         $headers = CurlWrapper::parseHeaders($curl->responseHeaders);
     }
     if ($this->isHtmlResponse($curl, $headers)) {
         $curl->response = HtmlResponse::convertEncoding($curl);
         $response = new HtmlResponse($curl, $headers);
         $response->setPrevious($previous);
         return $response;
     }
     $response = new Response($curl, $headers);
     $response->setPrevious($previous);
     return $response;
 }