VariadicExtension::initialize()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
/*
6
 * This file is part of the VariadicExtension package.
7
 *
8
 * (c) Kamil Kokot <[email protected]>
9
 *
10
 * For the full copyright and license information, please view the LICENSE
11
 * file that was distributed with this source code.
12
 */
13
14
namespace FriendsOfBehat\VariadicExtension\ServiceContainer;
15
16
use Behat\Testwork\Argument\ServiceContainer\ArgumentExtension;
17
use Behat\Testwork\ServiceContainer\Extension;
18
use Behat\Testwork\ServiceContainer\ExtensionManager;
19
use FriendsOfBehat\VariadicExtension\Argument\VariadicArgumentOrganiser;
20
use Symfony\Component\Config\Definition\Builder\ArrayNodeDefinition;
21
use Symfony\Component\DependencyInjection\ContainerBuilder;
22
use Symfony\Component\DependencyInjection\Definition;
23
use Symfony\Component\DependencyInjection\Reference;
24
25
final class VariadicExtension implements Extension
26
{
27
    /**
28
     * {@inheritdoc}
29
     */
30
    public function getConfigKey(): string
31
    {
32
        return 'fob_variadic';
33
    }
34
35
    /**
36
     * {@inheritdoc}
37
     */
38
    public function initialize(ExtensionManager $extensionManager): void
39
    {
40
    }
41
42
    /**
43
     * {@inheritdoc}
44
     */
45
    public function configure(ArrayNodeDefinition $builder): void
46
    {
47
    }
48
49
    /**
50
     * {@inheritdoc}
51
     */
52
    public function load(ContainerBuilder $container, array $config): void
53
    {
54
        $definition = new Definition(VariadicArgumentOrganiser::class, [
55
            new Reference('fob_variadic.argument.mixed_organiser.inner'),
56
        ]);
57
        $definition->setDecoratedService(ArgumentExtension::MIXED_ARGUMENT_ORGANISER_ID);
58
59
        $container->setDefinition('fob_variadic.argument.mixed_organiser', $definition);
60
    }
61
62
    /**
63
     * {@inheritdoc}
64
     */
65
    public function process(ContainerBuilder $container): void
66
    {
67
    }
68
}
69