src/Listener/WorkerMessageFailedListener.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\Listener;
  3. use App\Message\EmailNotification;
  4. use Symfony\Component\Messenger\Event\WorkerMessageFailedEvent;
  5. use Symfony\Component\Messenger\MessageBusInterface;
  6. class WorkerMessageFailedListener
  7. {
  8.     public function __construct(private  MessageBusInterface $bus)
  9.     {
  10.     }
  11.     public function __invoke(WorkerMessageFailedEvent $event): void
  12.     {
  13.         if(!$event->willRetry()){
  14.             $this->bus->dispatch(new EmailNotification(
  15.                 ['subject' => 'Worker Message Failed''content' => $event->getThrowable()->getMessage()]
  16.             ));
  17.         }
  18.     }
  19. }