Example #1
0
 /**
  * On dispatch event listener - called on any event
  *
  * @param Event $event
  * @param string $eventName
  * @return void
  */
 public function onException(Event $event)
 {
     if ($event instanceof Amqp\ErrorEvent) {
         $event->getEvent()->addHeader("x-exception", ["message" => $event->getException()->getMessage(), "code" => $event->getException()->getCode(), "class" => get_class($event->getException())]);
         $this->postpone($event->getEvent());
         $event->getEvent()->ack();
         if ($this->stopPropagation) {
             $event->stopPropagation();
         }
     }
 }
 /**
  * On dispatch event listener - called on any event
  *
  * @param Event $event
  * @param string $eventName
  * @return void
  */
 public function onException(Event $event, $eventName)
 {
     if ($event instanceof Amqp\ErrorEvent) {
         $event->getEvent()->addHeader("x-exception", ["message" => $event->getException()->getMessage(), "code" => $event->getException()->getCode(), "class" => get_class($event->getException())]);
         $this->deadLetter($event->getEvent(), $event->getException());
         $event->getEvent()->reject(null);
         if ($this->stopPropagation) {
             $event->stopPropagation();
         }
     }
 }
Example #3
0
 /**
  * @param Event $event
  * @return mixed|Response
  */
 public function __invoke(Event $event)
 {
     /** @var DispatchErrorEvent $event */
     $exc = $event->getException();
     return new Response($event->isDebug() ? $exc->getMessage() : $this->getErrorHtml(), Response::HTTP_INTERNAL_SERVER_ERROR, ['content-type' => 'text/html']);
 }