Issues (3627)

DependencyInjection/Factory/ApiFactory.php (2 issues)

1
<?php
2
3
/*
4
 * @copyright   2014 Mautic Contributors. All rights reserved
5
 * @author      Mautic
6
 *
7
 * @link        http://mautic.org
8
 *
9
 * @license     GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
10
 */
11
12
namespace Mautic\ApiBundle\DependencyInjection\Factory;
13
14
use Symfony\Bundle\SecurityBundle\DependencyInjection\Security\Factory\SecurityFactoryInterface;
15
use Symfony\Component\Config\Definition\Builder\NodeDefinition;
16
use Symfony\Component\DependencyInjection\ContainerBuilder;
17
use Symfony\Component\DependencyInjection\DefinitionDecorator;
18
use Symfony\Component\DependencyInjection\Reference;
19
20
/**
21
 * Class ApiFactory.
22
 */
23
class ApiFactory implements SecurityFactoryInterface
24
{
25
    /**
26
     * {@inheritdoc}
27
     */
28
    public function create(ContainerBuilder $container, $id, $config, $userProvider, $defaultEntryPoint)
29
    {
30
        $providerId = 'security.authentication.provider.mautic_api.'.$id;
31
        $container
32
            ->setDefinition($providerId, new DefinitionDecorator('mautic_api.security.authentication.provider'))
0 ignored issues
show
Deprecated Code introduced by
The class Symfony\Component\Depend...ion\DefinitionDecorator has been deprecated: The DefinitionDecorator class is deprecated since version 3.3 and will be removed in 4.0. Use the Symfony\Component\DependencyInjection\ChildDefinition class instead. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated  annotation

32
            ->setDefinition($providerId, /** @scrutinizer ignore-deprecated */ new DefinitionDecorator('mautic_api.security.authentication.provider'))
Loading history...
33
            ->replaceArgument(0, new Reference($userProvider))
34
        ;
35
36
        $listenerId = 'security.authentication.listener.mautic_api.'.$id;
37
        $container->setDefinition($listenerId, new DefinitionDecorator('mautic_api.security.authentication.listener'));
0 ignored issues
show
Deprecated Code introduced by
The class Symfony\Component\Depend...ion\DefinitionDecorator has been deprecated: The DefinitionDecorator class is deprecated since version 3.3 and will be removed in 4.0. Use the Symfony\Component\DependencyInjection\ChildDefinition class instead. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated  annotation

37
        $container->setDefinition($listenerId, /** @scrutinizer ignore-deprecated */ new DefinitionDecorator('mautic_api.security.authentication.listener'));
Loading history...
38
39
        return [$providerId, $listenerId, $defaultEntryPoint];
40
    }
41
42
    /**
43
     * {@inheritdoc}
44
     */
45
    public function getPosition()
46
    {
47
        return 'pre_auth';
48
    }
49
50
    /**
51
     * {@inheritdoc}
52
     */
53
    public function getKey()
54
    {
55
        return 'mautic_api_auth';
56
    }
57
58
    /**
59
     * {@inheritdoc}
60
     */
61
    public function addConfiguration(NodeDefinition $node)
62
    {
63
    }
64
}
65