Passed
Push — master ( ab3fce...bb4bd6 )
by Andreas
22:41
created

loggerPass::process()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 12
Code Lines 8

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 8
nc 1
nop 1
dl 0
loc 12
ccs 0
cts 9
cp 0
crap 2
rs 10
c 1
b 0
f 0
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
    public function __construct(midcom_config $config)
18
    {
19
        $this->config = $config;
20
    }
21
22
    public function process(ContainerBuilder $container)
23
    {
24
        $filehandler = $container->getDefinition('logger.filehandler');
25
        $filehandler->addArgument($this->config->get('log_filename'));
26
        $filehandler->addArgument(\midcom_debug::convert_level((int) $this->config->get('log_level')));
27
28
        $logger = new ChildDefinition('logger');
29
        $logger->replaceArgument(0, 'request');
30
        $container->setDefinition('logger.controller_resolver', $logger);
31
32
        $resolver = $container->getDefinition('controller_resolver');
33
        $resolver->addArgument(new Reference('logger.controller_resolver'));
34
    }
35
}