コード例 #1
0
ファイル: Technorati.php プロジェクト: robertodormepoco/zf2
 /**
  * Checks ReST response for errors.
  *
  * @param   Response $response    the ReST response
  * @return  void
  * @throws  Exception\RuntimeException
  * @access  protected
  */
 protected static function checkResponse(HttpResponse $response)
 {
     if ($response->isServerError() || $response->isClientError()) {
         throw new Exception\RuntimeException(sprintf('Invalid response status code (HTTP/%s %s %s)', $response->getVersion(), $response->getStatus(), $response->getMessage()));
     }
 }
コード例 #2
0
 /**
  * @param Response $response
  *
  * @throws Exception\ClientException
  *
  * @return mixed
  */
 protected function decodeBody(Response $response)
 {
     if ($response->isServerError()) {
         throw new Exception\ClientException(sprintf("'%s' provider encountered a '%s' error while querying '%s'", $this->getIdentifier(), $response->getReasonPhrase(), $this->uri));
     }
     $body = Json::decode($response->getBody());
     if ($response->isClientError()) {
         throw new Exception\ClientException($body->error->message, $response->getStatusCode());
     }
     return $body;
 }
コード例 #3
0
ファイル: Client.php プロジェクト: buse974/zopentok
 private function handleException(Response $resp)
 {
     // TODO: test coverage
     if ($resp->isClientError()) {
         if ($resp->getStatusCode() === 403) {
             throw new AuthenticationException($this->apiKey, $this->apiSecret, null);
         } else {
             throw new DomainException('The OpenTok API request failed: ' . $resp->getReasonPhrase(), null);
         }
     } elseif ($resp->isServerError()) {
         throw new UnexpectedValueException('The OpenTok API server responded with an error: ' . $resp->getReasonPhrase(), null);
     } else {
         throw new Exception('An unexpected error occurred:' . $resp->getReasonPhrase());
     }
 }