ObCmsExtension::load()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 18
Code Lines 11

Duplication

Lines 0
Ratio 0 %

Importance

Changes 6
Bugs 0 Features 1
Metric Value
c 6
b 0
f 1
dl 0
loc 18
rs 9.4286
cc 1
eloc 11
nc 1
nop 2
1
<?php
2
3
namespace Ob\CmsBundle\DependencyInjection;
4
5
use Ob\CmsBundle\DependencyInjection\Compiler\AdminCompilerPass;
6
use Symfony\Component\Config\FileLocator;
7
use Symfony\Component\DependencyInjection\ContainerBuilder;
8
use Symfony\Component\DependencyInjection\Loader;
9
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
10
11
/**
12
 * This is the class that loads and manages your bundle configuration
13
 *
14
 * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html}
15
 */
16
class ObCmsExtension extends Extension
17
{
18
    /**
19
     * {@inheritDoc}
20
     */
21
    public function load(array $configs, ContainerBuilder $container)
22
    {
23
        $configuration = new Configuration();
24
        $config        = $this->processConfiguration($configuration, $configs);
25
26
        $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));
27
        $loader->load('services.yml');
28
29
        $container->setParameter('ob_cms.configs', $config);
30
        $container->setParameter('ob_cms.locales', $config['locales']);
31
32
        $container->setParameter('ob_cms.classes', $config['classes']);
33
        $container->setParameter('ob_cms.classes.controller', $config['classes']['controller']);
34
35
        $container->setParameter('ob_cms.templates', $config['templates']);
36
37
        $container->addCompilerPass(new AdminCompilerPass());
38
    }
39
}
40