LeagueContainerAdapter::addApplicationConfig()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 6
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 3
nc 1
nop 2
1
<?php
2
3
namespace TomPHP\ContainerConfigurator\League;
4
5
use Assert\Assertion;
6
use League\Container\Container;
7
use TomPHP\ContainerConfigurator\ApplicationConfig;
8
use TomPHP\ContainerConfigurator\ContainerAdapter;
9
use TomPHP\ContainerConfigurator\InflectorConfig;
10
use TomPHP\ContainerConfigurator\ServiceConfig;
11
12
/**
13
 * @internal
14
 */
15
final class LeagueContainerAdapter implements ContainerAdapter
16
{
17
    /**
18
     * @var Container
19
     */
20
    private $container;
21
22
    /**
23
     * @param Container $container
24
     */
25
    public function setContainer($container)
26
    {
27
        $this->container = $container;
28
    }
29
30
    public function addApplicationConfig(ApplicationConfig $config, $prefix = 'config')
31
    {
32
        Assertion::string($prefix);
33
34
        $this->container->addServiceProvider(new ApplicationConfigServiceProvider($config, $prefix));
35
    }
36
37
    public function addServiceConfig(ServiceConfig $config)
38
    {
39
        $this->container->addServiceProvider(new ServiceServiceProvider($config));
40
    }
41
42
    public function addInflectorConfig(InflectorConfig $config)
43
    {
44
        $this->container->addServiceProvider(new InflectorServiceProvider($config));
45
    }
46
}
47