/**
  * Throw exception
  *
  * @param Response $response
  *
  * @throws Exception\ExceptionInterface
  *
  * @codeCoverageIgnore
  */
 protected function throwExceptions(Response $response)
 {
     if ($response->hasErrors()) {
         throw $response->getLastError();
     }
     $message = 'Error while execute request, code: ' . $response->getCode();
     switch ($response->getCode()) {
         case 200:
         case 201:
             break;
         case 204:
             $message = 'No content';
             break;
         case 400:
             $message = 'Bad Request';
             break;
         case 401:
             $message = 'Unauthorized';
             break;
         case 404:
             $message = 'Not Found';
             break;
         case 405:
             $message = 'Method Not Allowed';
             break;
         case 500:
             $message = 'Internal Server Error';
             break;
     }
     throw new Exception\HttpException($message, $response->getCode());
 }