ProjetNormandieTwitchExtension::load()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 11
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 7
c 2
b 0
f 0
dl 0
loc 11
rs 10
cc 1
nc 1
nop 2
1
<?php
2
3
declare(strict_types=1);
4
5
namespace ProjetNormandie\TwitchBundle\DependencyInjection;
6
7
use Symfony\Component\DependencyInjection\ContainerBuilder;
8
use Symfony\Component\Config\FileLocator;
9
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
10
use Symfony\Component\DependencyInjection\Loader;
11
use Exception;
12
13
class ProjetNormandieTwitchExtension extends Extension
14
{
15
    /**
16
     * @param array            $configs
17
     * @param ContainerBuilder $container
18
     * @throws Exception
19
     */
20
    public function load(array $configs, ContainerBuilder $container): void
21
    {
22
        $configuration = new Configuration();
23
        $config = $this->processConfiguration($configuration, $configs);
24
25
        $container->setParameter('pn.twitch.client_id', $config['client_id']);
26
        $container->setParameter('pn.twitch.client_secret', $config['client_secret']);
27
28
        $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__ . '/../../config'));
29
        $loader->load('services.yml');
30
        $loader->load('admin.yml');
31
    }
32
}
33