Spaces:
No application file
No application file
namespace Mautic\ApiBundle\DependencyInjection\Factory; | |
use Symfony\Bundle\SecurityBundle\DependencyInjection\Security\Factory\SecurityFactoryInterface; | |
use Symfony\Component\Config\Definition\Builder\NodeDefinition; | |
use Symfony\Component\DependencyInjection\ChildDefinition; | |
use Symfony\Component\DependencyInjection\ContainerBuilder; | |
use Symfony\Component\DependencyInjection\Reference; | |
class ApiFactory implements SecurityFactoryInterface | |
{ | |
public function create(ContainerBuilder $container, string $id, array $config, string $userProvider, ?string $defaultEntryPoint): array | |
{ | |
$providerId = 'security.authentication.provider.mautic_api.'.$id; | |
$container | |
->setDefinition($providerId, new ChildDefinition('mautic_api.security.authentication.provider')) | |
->replaceArgument(0, new Reference($userProvider)); | |
$listenerId = 'security.authentication.listener.mautic_api.'.$id; | |
$container->setDefinition($listenerId, new ChildDefinition('mautic_api.security.authentication.listener')); | |
return [$providerId, $listenerId, $defaultEntryPoint]; | |
} | |
public function getPosition() | |
{ | |
return 'pre_auth'; | |
} | |
public function getKey() | |
{ | |
return 'mautic_api_auth'; | |
} | |
public function addConfiguration(NodeDefinition $node): void | |
{ | |
} | |
} | |