src/EventListener/JWTDecodedListener.php line 28

Open in your IDE?
  1. <?php
  2. namespace App\EventListener;
  3. use App\Services\TokenManager;
  4. use Symfony\Component\HttpFoundation\RequestStack;
  5. use Lexik\Bundle\JWTAuthenticationBundle\Event\JWTDecodedEvent;
  6. use Symfony\Component\HttpFoundation\JsonResponse;
  7. class JWTDecodedListener
  8. {
  9.     protected $tokenManager;
  10.     function __construct(
  11.         RequestStack  $request,
  12.         TokenManager $tokenManager
  13.     )
  14.     {
  15.         $this->request $request;
  16.         $this->tokenManager $tokenManager;
  17.     }
  18.     /**
  19.      * @param JWTDecodedEvent $event
  20.      *
  21.      * @return void
  22.      */
  23.     public function onJWTDecoded(JWTDecodedEvent $event)
  24.     {
  25.         $payload $event->getPayload();
  26.         if (!$payload) return;
  27.         
  28.         if ($this->tokenManager->isInvalidToken()) {
  29.             $event->markAsInvalid();
  30.             return;
  31.         }
  32.         return;
  33.     }
  34. }