vendor/symfony/mailer/DataCollector/MessageDataCollector.php line 32

  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\DataCollector;
  11. use Symfony\Component\HttpFoundation\Request;
  12. use Symfony\Component\HttpFoundation\Response;
  13. use Symfony\Component\HttpKernel\DataCollector\DataCollector;
  14. use Symfony\Component\Mailer\Event\MessageEvents;
  15. use Symfony\Component\Mailer\EventListener\MessageLoggerListener;
  16. /**
  17.  * @author Fabien Potencier <fabien@symfony.com>
  18.  */
  19. final class MessageDataCollector extends DataCollector
  20. {
  21.     private MessageEvents $events;
  22.     public function __construct(MessageLoggerListener $logger)
  23.     {
  24.         $this->events $logger->getEvents();
  25.     }
  26.     public function collect(Request $requestResponse $response\Throwable $exception null)
  27.     {
  28.         $this->data['events'] = $this->events;
  29.     }
  30.     public function getEvents(): MessageEvents
  31.     {
  32.         return $this->data['events'];
  33.     }
  34.     /**
  35.      * @internal
  36.      */
  37.     public function base64Encode(string $data): string
  38.     {
  39.         return base64_encode($data);
  40.     }
  41.     public function reset()
  42.     {
  43.         $this->data = [];
  44.     }
  45.     public function getName(): string
  46.     {
  47.         return 'mailer';
  48.     }
  49. }