vendor/gesdinet/jwt-refresh-token-bundle/GesdinetJWTRefreshTokenBundle.php line 28

Open in your IDE?
  1. <?php
  2. namespace Gesdinet\JWTRefreshTokenBundle;
  3. use Gesdinet\JWTRefreshTokenBundle\DependencyInjection\Compiler\CustomUserProviderCompilerPass;
  4. use Gesdinet\JWTRefreshTokenBundle\DependencyInjection\Compiler\ObjectManagerCompilerPass;
  5. use Gesdinet\JWTRefreshTokenBundle\DependencyInjection\Compiler\UserCheckerCompilerPass;
  6. use Gesdinet\JWTRefreshTokenBundle\DependencyInjection\Security\Factory\RefreshTokenAuthenticatorFactory;
  7. use Symfony\Bundle\SecurityBundle\DependencyInjection\SecurityExtension;
  8. use Symfony\Component\DependencyInjection\ContainerBuilder;
  9. use Symfony\Component\HttpKernel\Bundle\Bundle;
  10. use Symfony\Component\Security\Http\RememberMe\RememberMeHandlerInterface;
  11. class GesdinetJWTRefreshTokenBundle extends Bundle
  12. {
  13.     public function build(ContainerBuilder $container)
  14.     {
  15.         parent::build($container);
  16.         $container->addCompilerPass(new CustomUserProviderCompilerPass(true));
  17.         $container->addCompilerPass(new ObjectManagerCompilerPass());
  18.         $container->addCompilerPass(new UserCheckerCompilerPass(true));
  19.         // Only register the security authenticator for Symfony 5.3+
  20.         if (interface_exists(RememberMeHandlerInterface::class)) {
  21.             /** @var SecurityExtension $extension */
  22.             $extension $container->getExtension('security');
  23.             $extension->addSecurityListenerFactory(new RefreshTokenAuthenticatorFactory());
  24.         }
  25.     }
  26. }