/**
  * @param Delivery $message
  *
  * @return Response
  *
  * @throws ReplyException
  */
 protected function createResponse(Delivery $message)
 {
     $headers = $message->getHeaders();
     if (!empty($headers['x-error'])) {
         throw new ReplyException($headers['x-error'], isset($headers['x-error-code']) ? $headers['x-error-code'] : 0);
     }
     $value = $this->getEncoder()->decode(new Encoded($message->getProperty('content-type', null), $message->getBody()));
     return new Response($value, $headers);
 }
Example #2
0
 /**
  * @param Delivery $message
  *
  * @return Request
  *
  * @throws \Exception
  */
 private function createRequest(Delivery $message)
 {
     $topic = (string) $message->getRoutingKey();
     $headers = $message->getHeaders();
     $arguments = json_decode($message->getBody(), true);
     if (json_last_error() !== JSON_ERROR_NONE) {
         throw new EncodingException('Unable to decode request: ' . json_last_error_msg());
     }
     return new Request($topic, $arguments, $headers);
 }