public static function fromBadResponseException(BadResponseException $old)
 {
     $new = new self($old->getMessage());
     $new->setRequest($old->getRequest());
     $new->setResponse($old->getResponse());
     return $new;
 }
Example #2
0
 protected function handleBadResponse(BadResponseException $e)
 {
     if ($e->getResponse()->getStatusCode() == 404) {
         $this->storage->delete($e->getRequest());
         throw $e;
     }
 }
 /**
  * Handles a bad response when attempting to revalidate
  *
  * @param BadResponseException $e Exception encountered
  *
  * @throws BadResponseException
  */
 protected function handleBadResponse(BadResponseException $e)
 {
     // 404 errors mean the resource no longer exists, so remove from
     // cache, and prevent an additional request by throwing the exception
     if ($e->getResponse()->getStatusCode() == 404) {
         $this->storage->delete($e->getRequest());
         throw $e;
     }
 }
 /**
  * @param  BadResponseException $previous
  * @return XsollaAPIException
  */
 public static function fromBadResponse(BadResponseException $previous)
 {
     $statusCode = $previous->getResponse()->getStatusCode();
     $message = sprintf(static::$messageTemplate, $previous->getMessage(), $previous->getRequest(), $previous->getResponse());
     if (array_key_exists($statusCode, static::$exceptions)) {
         return new static::$exceptions[$statusCode]($message, 0, $previous);
     }
     return new self($message, 0, $previous);
 }
 public static function factory(BadResponseException $exception)
 {
     $response = $exception->getResponse();
     $message = sprintf("This operation was forbidden; the API returned a %s status code with this message:\n%s", $response->getStatusCode(), (string) $response->getBody());
     $e = new self($message);
     $e->setResponse($response);
     $e->setRequest($exception->getRequest());
     return $e;
 }
 public static function factory(BadResponseException $exception)
 {
     $response = $exception->getResponse();
     $message = sprintf("This resource you were looking for could not be found; the API returned a %s status code with this message:\n%s", $response->getStatusCode(), (string) $response->getBody());
     $e = new self($message);
     $e->setResponse($response);
     $e->setRequest($exception->getRequest());
     return $e;
 }
Example #7
0
 /**
  * @param BadResponseException $cause
  *
  * @return self
  */
 public static function factory(BadResponseException $cause)
 {
     $request = $cause->getRequest();
     $response = $cause->getResponse();
     if ($response->isClientError()) {
         $class = __NAMESPACE__ . '\\ClientFailureException';
     } else {
         $class = __NAMESPACE__ . '\\ServerFailureException';
     }
     $exception = new $class($response->getReasonPhrase(), null, $cause);
     if ($exception instanceof HttpException) {
         $statusCode = $response->getStatusCode();
         $httpMethod = $request->getMethod();
         $exception->setStatusCode($statusCode);
         $exception->setResponse($response);
         $exception->setRequest($request);
         if (isset(self::$descriptionMapping[$httpMethod][$statusCode])) {
             $exception->setDescription(self::$descriptionMapping[$httpMethod][$statusCode]);
         }
     }
     return $exception;
 }