EventManager   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
dl 0
loc 32
rs 10
c 0
b 0
f 0
wmc 5
lcom 0
cbo 2

4 Methods

Rating   Name   Duplication   Size   Complexity  
A registerListener() 0 6 1
A register() 0 3 1
A trigger() 0 4 1
A getEventManager() 0 10 2
1
<?php
2
3
namespace Core\Event;
4
5
use JBZoo\Event\EventManager as ZooEventManager;
6
7
class EventManager
8
{
9
    public static function registerListener(array $eventListeners)
10
    {
11
        $register = new EventListenerRegister();
12
        $register->setEventListener($eventListeners);
13
        $register->register();
14
    }
15
16
    public static function register($eventName, callable $handler, $priority = null) {
17
        self::getEventManager()->on($eventName, $handler, $priority);
18
    }
19
20
    public static function trigger($eventName, array $arguments = [], callable $callback = null)
21
    {
22
        return self::getEventManager()->trigger($eventName, $arguments, $callback);
23
    }
24
25
    /**
26
     * @return ZooEventManager
27
     */
28
    private static function getEventManager()
29
    {
30
        static $instance = null;
31
32
        if ($instance === null) {
33
            $instance = new ZooEventManager();
34
        }
35
36
        return $instance;
37
    }
38
}
39