eXpansionAdminGroupsExtension   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 5

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 5
dl 0
loc 25
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A load() 0 14 1
1
<?php
2
3
namespace eXpansion\Framework\AdminGroups\DependencyInjection;
4
5
use Symfony\Component\DependencyInjection\ContainerBuilder;
6
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
7
use Symfony\Component\Config\FileLocator;
8
use Symfony\Component\DependencyInjection\Loader;
9
10
class eXpansionAdminGroupsExtension extends Extension
11
{
12
    /**
13
     * Loads a specific configuration.
14
     *
15
     * @param array $configs An array of configuration values
16
     * @param ContainerBuilder $container A ContainerBuilder instance
17
     *
18
     * @throws \InvalidArgumentException When provided tag is not defined in this extension
19
     */
20
    public function load(array $configs, ContainerBuilder $container)
21
    {
22
        $configuration = new Configuration();
23
        $config = $this->processConfiguration($configuration, $configs);
24
        $container->setParameter('expansion.admin_groups.raw.configs', $config);
25
26
        /** @noinspection PhpUndefinedClassInspection */
27
        $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
28
        $loader->load('helpers.yml');
29
        $loader->load('services.yml');
30
        $loader->load('plugins.yml');
31
        $loader->load('configs.yml');
32
        $loader->load('admin_permissions.yml');
33
    }
34
}
35