Example #1
0
 /**
  * @author Ronan Chilvers <*****@*****.**>
  */
 public function submit(RequestInterface $request)
 {
     $client = $this->getHttpClient();
     try {
         $requestOptions = ['headers' => $request->getHeaders()];
         if (false !== ($body = $request->getBody())) {
             $key = $request instanceof JsonRequest ? 'json' : 'body';
             $requestOptions[$key] = $body;
         } else {
             $requestOptions['query'] = $request->getParams();
         }
         $guzzleRequest = $client->createRequest($request->getVerb(), $request->getPath(), $requestOptions);
         $guzzleResponse = $client->send($guzzleRequest);
         $response = new Response($guzzleResponse);
         return $response;
     } catch (\GuzzleHttp\Exception\ClientException $ex) {
         $response = new ExceptionResponse($ex->getResponse());
         $response->setException($ex);
         return $response;
     }
 }