Completed
Push — master ( dc75ec...4f40a5 )
by Jeroen
25:21
created

VersionCheckerCacheBcPass::process()   A

Complexity

Conditions 3
Paths 2

Size

Total Lines 13

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 13
rs 9.8333
c 0
b 0
f 0
cc 3
nc 2
nop 1
1
<?php
2
3
namespace Kunstmaan\AdminBundle\DependencyInjection\Compiler;
4
5
use Doctrine\Common\Cache\FilesystemCache;
6
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
7
use Symfony\Component\DependencyInjection\ContainerBuilder;
8
9
/**
10
 * @internal
11
 */
12
final class VersionCheckerCacheBcPass implements CompilerPassInterface
13
{
14
    public function process(ContainerBuilder $container)
15
    {
16
        // NEXT_MAJOR: remove compiler pass when doctrine/cache dependency is removed.
17
        $cacheDefinition = $container->findDefinition('kunstmaan_admin.cache');
18
        if ($cacheDefinition->getClass() !== FilesystemCache::class || $cacheDefinition->getArgument(0) !== '%kernel.cache_dir%/fcache') {
19
            // The "kunstmaan_admin.cache service" is changed compared to the default definition, injected this service instead to keep BC.
20
            $versionChecker = $container->getDefinition('kunstmaan_admin.versionchecker');
21
            $versionChecker->setArgument(1, $cacheDefinition);
22
23
            $versionDataCollector = $container->getDefinition('kunstmaan_admin.datacollector.bundleversion');
24
            $versionDataCollector->setArgument(1, $cacheDefinition);
25
        }
26
    }
27
}
28