Passed
Push — master ( e31e38...b36f9b )
by Andreas
16:51
created

loggerPass   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 11
dl 0
loc 24
ccs 12
cts 12
cp 1
rs 10
c 1
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 1
A process() 0 12 1
1
<?php
2
namespace midcom\dependencyInjection;
3
4
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
5
use Symfony\Component\DependencyInjection\ContainerBuilder;
6
use midcom_config;
7
use Symfony\Component\DependencyInjection\ChildDefinition;
8
use Symfony\Component\DependencyInjection\Reference;
9
10
class loggerPass implements CompilerPassInterface
11
{
12
    /**
13
     * @var midcom_config
14
     */
15
    private $config;
16
17 1
    public function __construct(midcom_config $config)
18
    {
19 1
        $this->config = $config;
20 1
    }
21
22 1
    public function process(ContainerBuilder $container)
23
    {
24 1
        $filehandler = $container->getDefinition('logger.filehandler');
25 1
        $filehandler->addArgument($this->config->get('log_filename'));
26 1
        $filehandler->addArgument(\midcom_debug::convert_level((int) $this->config->get('log_level')));
27
28 1
        $logger = new ChildDefinition('logger');
29 1
        $logger->replaceArgument(0, 'request');
30 1
        $container->setDefinition('logger.controller_resolver', $logger);
31
32 1
        $resolver = $container->getDefinition('controller_resolver');
33 1
        $resolver->addArgument(new Reference('logger.controller_resolver'));
34
    }
35
}