/**
  * {@inheritdoc}
  */
 public function handle(ConsumerContainerException $ex)
 {
     $genericMessage = $ex->getPayloadMessage();
     $routingKey = $ex->getConsumerContainer()->getConsumerIdentification();
     $message = $ex->getAmqpMessage();
     $table = $this->getHeaders($message);
     $nativeData = $table->getNativeData();
     if (!isset($nativeData['type'])) {
         $table->set('type', $genericMessage->getRoutingKey(), AMQPTable::T_STRING_LONG);
     }
     if (!isset($nativeData['routing'])) {
         $table->set('routing', $routingKey, AMQPTable::T_STRING_LONG);
     }
     $message->set('application_headers', $table);
     $this->client->sendMessage($message, $routingKey);
 }
示例#2
0
 /**
  * {@inheritdoc}
  */
 public function handle(ConsumerContainerException $ex)
 {
     $messageClass = $ex->getConsumerContainer()->getMessageClass();
     $message = sprintf('Exception [%s] occurred while processing message [%s]', $ex->getMessage(), $messageClass);
     $this->logger->warning($message, ['exception' => $ex]);
 }