/** * {@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()); } }
/** * {@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); } }
/** * {@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()); } }