src/Listener/BeforeRequestListener.php line 45

Open in your IDE?
  1. <?php
  2. namespace App\Listener;
  3. use Doctrine\ORM\EntityManagerInterface;
  4. use Psr\Log\LoggerInterface;
  5. use Symfony\Component\HttpKernel\Event\RequestEvent;
  6. use Symfony\Component\Security\Core\Security;
  7. class BeforeRequestListener
  8. {
  9.     /**
  10.      * @var EntityManagerInterface
  11.      */
  12.     private $em;
  13.     /**
  14.      * @var Security
  15.      */
  16.     private $security;
  17.     /**
  18.      * @var LoggerInterface
  19.      */
  20.     private $logger;
  21.     /**
  22.      * BeforeRequestListener constructor.
  23.      * @param EntityManagerInterface $em
  24.      * @param Security $security
  25.      * @param LoggerInterface $logger
  26.      */
  27.     public function __construct(EntityManagerInterface $emSecurity $securityLoggerInterface $logger)
  28.     {
  29.         $this->em $em;
  30.         $this->security $security;
  31.         $this->logger $logger;
  32.     }
  33.     /**
  34.      * @param RequestEvent $event
  35.      */
  36.     public function onKernelRequest(RequestEvent $event)
  37.     {
  38.         $filter $this->em
  39.             ->getFilters()
  40.             ->enable('active_filter');
  41.         $filter->setSecurity($this->security);
  42.         $exclusionsFilter $this->em->getFilters()->enable('exclusions_filter');
  43.         $exclusionsFilter->setEntityManager($this->em)->setLogger($this->logger)->setUser($this->security->getUser());
  44.     }
  45. }