EventingAware   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 5
lcom 1
cbo 1
dl 0
loc 36
ccs 13
cts 13
cp 1
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A setEventManager() 0 4 1
A triggerEvent() 0 6 2
A listenOnEvent() 0 6 2
1
<?php
2
namespace Aeq\Hal\Event;
3
4
trait EventingAware
5
{
6
    /**
7
     * @var EventManager
8
     */
9
    private $eventManager;
10
11
    /**
12
     * @param EventInterface $event
13
     */
14 6
    public function triggerEvent(EventInterface $event)
15
    {
16 6
        if ($this->eventManager instanceof EventManager) {
17 1
            $this->eventManager->trigger($event);
18 1
        }
19 6
    }
20
21
    /**
22
     * @param string $event
23
     * @param string $listener
24
     */
25 2
    public function listenOnEvent($event, $listener)
26
    {
27 2
        if ($this->eventManager instanceof EventManager) {
28 1
            $this->eventManager->listen($event, $listener);
29 1
        }
30 2
    }
31
32
    /**
33
     * @param EventManager $eventManager
34
     */
35 2
    public function setEventManager(EventManager $eventManager)
36
    {
37 2
        $this->eventManager = $eventManager;
38 2
    }
39
}
40