Completed
Push — master ( 18488c...878056 )
by Park Jong-Hun
02:25
created

EventManager::trigger()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 3
dl 0
loc 4
rs 10
c 0
b 0
f 0
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