vendor/symfony/mailer/SentMessage.php line 20

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of the Symfony package.
  4.  *
  5.  * (c) Fabien Potencier <fabien@symfony.com>
  6.  *
  7.  * For the full copyright and license information, please view the LICENSE
  8.  * file that was distributed with this source code.
  9.  */
  10. namespace Symfony\Component\Mailer;
  11. use Symfony\Component\Mime\Message;
  12. use Symfony\Component\Mime\RawMessage;
  13. /**
  14.  * @author Fabien Potencier <fabien@symfony.com>
  15.  */
  16. class SentMessage
  17. {
  18.     private RawMessage $original;
  19.     private RawMessage $raw;
  20.     private Envelope $envelope;
  21.     private string $messageId;
  22.     private string $debug '';
  23.     /**
  24.      * @internal
  25.      */
  26.     public function __construct(RawMessage $messageEnvelope $envelope)
  27.     {
  28.         $message->ensureValidity();
  29.         $this->original $message;
  30.         $this->envelope $envelope;
  31.         if ($message instanceof Message) {
  32.             $message = clone $message;
  33.             $headers $message->getHeaders();
  34.             if (!$headers->has('Message-ID')) {
  35.                 $headers->addIdHeader('Message-ID'$message->generateMessageId());
  36.             }
  37.             $this->messageId $headers->get('Message-ID')->getId();
  38.             $this->raw = new RawMessage($message->toIterable());
  39.         } else {
  40.             $this->raw $message;
  41.         }
  42.     }
  43.     public function getMessage(): RawMessage
  44.     {
  45.         return $this->raw;
  46.     }
  47.     public function getOriginalMessage(): RawMessage
  48.     {
  49.         return $this->original;
  50.     }
  51.     public function getEnvelope(): Envelope
  52.     {
  53.         return $this->envelope;
  54.     }
  55.     public function setMessageId(string $id): void
  56.     {
  57.         $this->messageId $id;
  58.     }
  59.     public function getMessageId(): string
  60.     {
  61.         return $this->messageId;
  62.     }
  63.     public function getDebug(): string
  64.     {
  65.         return $this->debug;
  66.     }
  67.     public function appendDebug(string $debug): void
  68.     {
  69.         $this->debug .= $debug;
  70.     }
  71.     public function toString(): string
  72.     {
  73.         return $this->raw->toString();
  74.     }
  75.     public function toIterable(): iterable
  76.     {
  77.         return $this->raw->toIterable();
  78.     }
  79. }