Completed
Push — master ( 030030...90a95a )
by Matze
10:56 queued 07:21
created

LocaleCompilerPass   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Test Coverage

Coverage 33.33%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 2
c 1
b 0
f 0
lcom 0
cbo 1
dl 0
loc 22
ccs 3
cts 9
cp 0.3333
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A process() 0 16 2
1
<?php
2
3
namespace BrainExe\Core\DependencyInjection\CompilerPass;
4
5
use BrainExe\Core\Annotations\CompilerPass;
6
7
use BrainExe\Core\Util\Glob;
8
9
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
10
use Symfony\Component\DependencyInjection\ContainerBuilder;
11
12
/**
13
 * @CompilerPass
14
 */
15
class LocaleCompilerPass implements CompilerPassInterface
16
{
17
    /**
18
     * {@inheritdoc}
19
     */
20 2
    public function process(ContainerBuilder $container)
21
    {
22 2
        if (!is_dir(ROOT . 'lang')) {
23 2
            return;
24
        }
25
26
        /** @var Glob $glob */
27
        $glob = $container->get('Glob');
28
29
        $locales = $glob->execGlob(ROOT . 'lang/*.po');
30
        $locales = array_map(function ($file) {
31
            return basename($file, '.po');
32
        }, $locales);
33
34
        $container->setParameter('locales', $locales);
35
    }
36
}
37