Completed
Push — master ( b8b783...188bc3 )
by De Cramer
9s
created

Dispatcher   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 2

Test Coverage

Coverage 63.64%

Importance

Changes 0
Metric Value
wmc 3
lcom 1
cbo 2
dl 0
loc 37
rs 10
c 0
b 0
f 0
ccs 7
cts 11
cp 0.6364

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 5 1
A init() 0 5 1
A dispatch() 0 4 1
1
<?php
2
3
namespace eXpansion\Core\Services\Application;
4
5
use eXpansion\Core\Services\DataProviderManager;
6
use eXpansion\Core\Services\PluginManager;
7
8
/**
9
 * Class Dispatcher, dispatches events to the Data Providers.
10
 *
11
 * @package eXpansion\Core\Services\Application
12
 * @author Oliver de Cramer
13
 */
14
class Dispatcher implements DispatcherInterface
15
{
16
    /** @var DataProviderManager  */
17
    protected $dataProviderManager;
18
19
    /** @var PluginManager */
20
    protected $pluginManager;
21
22
    /**
23
     * Dispatcher constructor.
24
     *
25
     * @param DataProviderManager $dataProviderManager
26
     * @param PluginManager $pluginManager
27
     */
28 26
    public function __construct(DataProviderManager $dataProviderManager, PluginManager $pluginManager)
29
    {
30 26
        $this->dataProviderManager = $dataProviderManager;
31 26
        $this->pluginManager = $pluginManager;
32 26
    }
33
34
    /**
35
     * Init.
36
     */
37
    public function init()
38
    {
39
        $this->pluginManager->init();
40
        $this->dataProviderManager->init();
41
    }
42
43
    /**
44
     * @inheritdoc
45
     */
46 18
    public function dispatch($event, $params)
47
    {
48 18
        $this->dataProviderManager->dispatch($event, $params);
49
    }
50
}