Symfony\Bundle\SecurityBundle\DependencyInjection\Security\Factory\FormLoginFactory::createListener PHP Method

createListener() protected method

protected createListener ( $container, $id, $config, $userProvider )
    protected function createListener($container, $id, $config, $userProvider)
    {
        $listenerId = parent::createListener($container, $id, $config, $userProvider);
        $container->getDefinition($listenerId)->addArgument(isset($config['csrf_token_generator']) ? new Reference($config['csrf_token_generator']) : null);
        return $listenerId;
    }

Usage Example

 protected function createListener($container, $id, $config, $userProvider)
 {
     $listenerId = parent::createListener($container, $id, $config, $userProvider);
     $simpleAuthHandlerId = 'security.authentication.simple_success_failure_handler.' . $id;
     $simpleAuthHandler = $container->setDefinition($simpleAuthHandlerId, new DefinitionDecorator('security.authentication.simple_success_failure_handler'));
     $simpleAuthHandler->replaceArgument(0, new Reference($config['authenticator']));
     $simpleAuthHandler->replaceArgument(1, new Reference($this->getSuccessHandlerId($id)));
     $simpleAuthHandler->replaceArgument(2, new Reference($this->getFailureHandlerId($id)));
     $listener = $container->getDefinition($listenerId);
     $listener->replaceArgument(5, new Reference($simpleAuthHandlerId));
     $listener->replaceArgument(6, new Reference($simpleAuthHandlerId));
     $listener->addArgument(new Reference($config['authenticator']));
     return $listenerId;
 }