Completed
Push — master ( 162ac8...74252e )
by
unknown
19:44
created

ProviderPass   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 34
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 3
lcom 0
cbo 3
dl 0
loc 34
ccs 0
cts 26
cp 0
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
B process() 0 28 3
1
<?php
2
3
namespace MediaMonks\SonataMediaBundle\DependencyInjection\Compiler;
4
5
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
6
use Symfony\Component\DependencyInjection\ContainerBuilder;
7
use Symfony\Component\DependencyInjection\Reference;
8
9
class ProviderPass implements CompilerPassInterface
10
{
11
    /**
12
     * @param ContainerBuilder $container
13
     */
14
    public function process(ContainerBuilder $container)
15
    {
16
        $config = $container->getParameter('mediamonks.sonata_media.config');
17
18
        if (empty($config['image_constraints'])) {
19
            $config['image_constraints'] = [];
20
        }
21
22
        $taggedServices = $container->findTaggedServiceIds('sonata_media.provider');
23
        foreach ($taggedServices as $id => $tags) {
24
            $container->getDefinition($id)->addMethodCall(
25
                'setFilesystem',
26
                [new Reference('mediamonks.sonata_media.filesystem.private')]
27
            );
28
            $container->getDefinition($id)->addMethodCall(
29
                'setImageConstraintOptions',
30
                [$config['image_constraints']]
31
            );
32
            $container->getDefinition($id)->addMethodCall(
33
                'setTranslator',
34
                [new Reference('translator')]
35
            );
36
            $container->getDefinition($id)->addMethodCall(
37
                'setHttpClient',
38
                [new Reference('mediamonks.sonata_media.http_client')]
39
            );
40
        }
41
    }
42
}
43