/**
  * {@inheritDoc}
  */
 public function postSend(RequestInterface $request, MessageInterface $response)
 {
     $content = $response->getArrayContent();
     if (is_array($content) && isset($content['state']) && $content['state'] !== '200') {
         throw new RuntimeException($content['statemsg'], (int) $content['state']);
     }
     /** @var $response \Nic\HttpClient\Message\Response */
     if ($response->isClientError() || $response->isServerError()) {
         $content = $response->getContent();
         if (is_array($content) && isset($content['message'])) {
             if (400 == $response->getStatusCode()) {
                 throw new ErrorException($content['message'], 400);
             }
         }
         $errorMessage = null;
         if (isset($content['error'])) {
             $errorMessage = implode("\n", $content['error']);
         } elseif (isset($content['message'])) {
             $errorMessage = $content['message'];
         } else {
             $errorMessage = $content;
         }
         throw new RuntimeException($errorMessage, $response->getStatusCode());
     }
 }
 /**
  * @param \Buzz\Message\RequestInterface $oRequest
  * @param \Buzz\Message\MessageInterface $oResponse
  * @throws \GitlabCI\Exception\ErrorException
  * @throws \GitlabCI\Exception\RuntimeException
  */
 public function postSend(\Buzz\Message\RequestInterface $oRequest, \Buzz\Message\MessageInterface $oResponse)
 {
     if ($oResponse->isClientError() || $oResponse->isServerError()) {
         $aContent = $oResponse->getContent();
         if (is_array($aContent) && isset($aContent['message'])) {
             if (400 == $oResponse->getStatusCode()) {
                 throw new \GitlabCI\Exception\ErrorException($aContent['message'], 400);
             }
         }
         $sErrorMessage = null;
         if (is_array($aContent)) {
             if (isset($aContent['error'])) {
                 if (is_array($aContent['error'])) {
                     $sErrorMessage = implode(PHP_EOL, $aContent['error']);
                 } else {
                     $sErrorMessage = $aContent['error'];
                 }
             } elseif (isset($aContent['message'])) {
                 $sErrorMessage = $aContent['message'];
             } else {
                 $sErrorMessage = $aContent;
             }
         } else {
             $sErrorMessage = 'Unkown error';
         }
         throw new \GitlabCI\Exception\RuntimeException($sErrorMessage, $oResponse->getStatusCode());
     }
 }
 /**
  * {@inheritDoc}
  */
 public function postSend(RequestInterface $request, MessageInterface $response)
 {
     /** @var $response \Dynect\HttpClient\Message\Response */
     if ($response->isClientError() || $response->isServerError()) {
         $content = $response->getContent();
         $message = array_shift($content['msgs']);
         throw new RuntimeException($message['INFO'], $response->getStatusCode());
     }
 }
Esempio n. 4
0
 /**
  * {@inheritDoc}
  * @param Response $response
  */
 public function postSend(RequestInterface $request, MessageInterface $response)
 {
     if ($response->isClientError() || $response->isServerError() || $response->getHeader('X-Curl-Error-Result')) {
         if ($this->client instanceof BatchClientInterface) {
             $this->failedMessages[] = [$request, $response];
             return;
         }
         throw new RequestFailedException($request, $response);
     }
 }
Esempio n. 5
0
 /**
  * {@inheritDoc}
  */
 public function postSend(RequestInterface $request, MessageInterface $response)
 {
     /** @var $response \GoSquared\HttpClient\Adapter\Buzz\Message\Response */
     if ($response->isClientError() || $response->isServerError()) {
         $content = $response->getContent();
         if (is_array($content) && isset($content['code'], $content['message'])) {
             switch ($content['code']) {
                 case 4001:
                     throw new AuthorizationException($content['message'], 403);
                     break;
                 case 4002:
                     throw new ApiLimitException($content['message'], 403);
                     break;
                 default:
                     throw new ErrorException(sprintf('%d: %s', $content['code'], $content['message']), $response->getStatusCode());
                     break;
             }
         }
         throw new ErrorException(isset($content['message']) ? $content['message'] : $content, $response->getStatusCode());
     }
 }
 /**
  * @param RequestInterface $request
  * @param MessageInterface $response
  * @throws ErrorException
  */
 public function postSend(RequestInterface $request, MessageInterface $response)
 {
     if ($response->isClientError() || $response->isServerError()) {
         $content = $response->getContent();
         if (is_array($content) && isset($content['message'])) {
             if (400 == $response->getStatusCode()) {
                 $message = $this->parseMessage($content['message']);
                 throw new ErrorException($message, 400);
             }
         }
         $errorMessage = null;
         if (isset($content['error'])) {
             $errorMessage = implode("\n", $content['error']);
         } elseif (isset($content['message'])) {
             $errorMessage = $this->parseMessage($content['message']);
         } else {
             $errorMessage = $content;
         }
         throw new RuntimeException($errorMessage, $response->getStatusCode());
     }
 }
 /**
  * {@inheritDoc}
  */
 public function postSend(RequestInterface $request, MessageInterface $response)
 {
     /** @var $response \Github\HttpClient\Message\Response */
     if ($response->isClientError() || $response->isServerError()) {
         $remaining = $response->getHeader('X-RateLimit-Remaining');
         if (null !== $remaining && 1 > $remaining) {
             throw new ApiLimitExceedException($this->options['api_limit']);
         }
         $content = $response->getContent();
         if (is_array($content) && isset($content['message'])) {
             if (400 == $response->getStatusCode()) {
                 throw new ErrorException($content['message'], 400);
             } elseif (422 == $response->getStatusCode() && isset($content['errors'])) {
                 $errors = array();
                 foreach ($content['errors'] as $error) {
                     switch ($error['code']) {
                         case 'missing':
                             $errors[] = sprintf('Resource "%s" not exists anymore', $error['resource']);
                             break;
                         case 'missing_field':
                             $errors[] = sprintf('Field "%s" is missing, for resource "%s"', $error['field'], $error['resource']);
                             break;
                         case 'invalid':
                             $errors[] = sprintf('Field "%s" is invalid, for resource "%s"', $error['field'], $error['resource']);
                             break;
                         case 'already_exists':
                             $errors[] = sprintf('Field "%s" already exists, for resource "%s"', $error['field'], $error['resource']);
                             break;
                         default:
                             $errors[] = $error['message'];
                             break;
                     }
                 }
                 throw new ValidationFailedException('Validation Failed: ' . implode(', ', $errors), 422);
             }
         }
         throw new RuntimeException(isset($content['message']) ? $content['message'] : $content, $response->getStatusCode());
     }
 }