vendor/symfony/messenger/EventListener/AddErrorDetailsStampListener.php line 20
- <?php
- /*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
- namespace Symfony\Component\Messenger\EventListener;
- use Symfony\Component\EventDispatcher\EventSubscriberInterface;
- use Symfony\Component\Messenger\Event\WorkerMessageFailedEvent;
- use Symfony\Component\Messenger\Stamp\ErrorDetailsStamp;
- final class AddErrorDetailsStampListener implements EventSubscriberInterface
- {
- public function onMessageFailed(WorkerMessageFailedEvent $event): void
- {
- $stamp = ErrorDetailsStamp::create($event->getThrowable());
- $previousStamp = $event->getEnvelope()->last(ErrorDetailsStamp::class);
- // Do not append duplicate information
- if (null === $previousStamp || !$previousStamp->equals($stamp)) {
- $event->addStamps($stamp);
- }
- }
- public static function getSubscribedEvents(): array
- {
- return [
- // must have higher priority than SendFailedMessageForRetryListener
- WorkerMessageFailedEvent::class => ['onMessageFailed', 200],
- ];
- }
- }