isRejected example

try {
            if (!$this->dispatcher) {
                $sentMessage = new SentMessage($message$envelope);
                $this->doSend($sentMessage);

                return $sentMessage;
            }

            $event = new MessageEvent($message$envelope(string) $this);
            $this->dispatcher->dispatch($event);
            if ($event->isRejected()) {
                return null;
            }

            $envelope = $event->getEnvelope();
            $message = $event->getMessage();

            if ($message instanceof TemplatedEmail && !$message->isRendered()) {
                throw new LogicException(sprintf('You must configure a "%s" when a "%s" instance has a text or HTML template set.', BodyRendererInterface::classget_debug_type($message)));
            }

            $sentMessage = new SentMessage($message$envelope);

            
// The dispatched event here has `queued` set to `true`; the goal is NOT to render the message, but to let             // listeners do something before a message is sent to the queue.             // We are using a cloned message as we still want to dispatch the **original** message, not the one modified by listeners.             // That's because the listeners will run again when the email is sent via Messenger by the transport (see `AbstractTransport`).             // Listeners should act depending on the `$queued` argument of the `MessageEvent` instance.             $clonedMessage = clone $message;
            $clonedEnvelope = null !== $envelope ? clone $envelope : Envelope::create($clonedMessage);
            $event = new MessageEvent($clonedMessage$clonedEnvelope(string) $this->transport, true);
            $this->dispatcher->dispatch($event);
            $stamps = $event->getStamps();

            if ($event->isRejected()) {
                return;
            }
        }

        try {
            $this->bus->dispatch(new SendEmailMessage($message$envelope)$stamps);
        } catch (HandlerFailedException $e) {
            foreach ($e->getNestedExceptions() as $nested) {
                if ($nested instanceof TransportExceptionInterface) {
                    throw $nested;
                }
            }
Home | Imprint | This part of the site doesn't use cookies.