РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1337 of 1361 menu

Класс RedeliveryStamp

Класс RedeliveryStamp представляет собой штамп (stamp), который добавляется в конверт сообщения Envelope при повторной доставке. Он хранит количество повторных попыток и сообщение об ошибке, из-за которой предыдущая попытка обработки завершилась неудачно. Первым параметром конструктора передаётся число повторных доставок, вторым - текст ошибки, третьим - имя транспорта, четвёртым - время возникновения ошибки.

Синтаксис

new RedeliveryStamp( int $retryCount, ?string $exceptionMessage = null, ?string $transportName = null, ?\\DateTimeImmutable $redeliveredAt = null )

Пример

Давайте создадим штамп повторной доставки с двумя попытками:

<?php use Symfony\\Component\\Messenger\\Stamp\\RedeliveryStamp; $stamp = new RedeliveryStamp(2, 'handler failed'); echo $stamp->getRetryCount(); ?>

Результат выполнения кода:

"2"

Пример

Давайте добавим штамп в конверт сообщения через метод with:

<?php use Symfony\\Component\\Messenger\\Envelope; use Symfony\\Component\\Messenger\\Stamp\\RedeliveryStamp; $envelope = new Envelope(new \\stdClass()); $envelope = $envelope->with(new RedeliveryStamp(1, 'timeout')); $stamp = $envelope->last(RedeliveryStamp::class); echo $stamp->getExceptionMessage(); ?>

Результат выполнения кода:

"timeout"

Пример

Давайте получим имя транспорта и время повторной доставки:

<?php use Symfony\\Component\\Messenger\\Stamp\\RedeliveryStamp; $stamp = new RedeliveryStamp(3, 'error', 'async'); echo $stamp->getTransportName() . ' ' . $stamp->getRedeliveredAt()->format('Y-m-d'); ?>

Результат выполнения кода:

"async 2026-09-14"

Смотрите также

  • класс Envelope,
    который оборачивает сообщение и хранит штампы
  • класс DelayStamp,
    который задаёт задержку перед доставкой сообщения
  • класс ReceivedStamp,
    который отмечает факт получения сообщения из транспорта
  • раздел failed,
    который описывает работу с неудачными сообщениями
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить