Total Complexity | 6 |
Total Lines | 25 |
Duplicated Lines | 0 % |
Coverage | 100% |
Changes | 1 | ||
Bugs | 0 | Features | 0 |
1 | <?php |
||
13 | final class Dispatcher implements EventDispatcherInterface |
||
14 | { |
||
15 | private ListenerProviderInterface $listenerProvider; |
||
16 | |||
17 | 2 | public function __construct(ListenerProviderInterface $listenerProvider) |
|
20 | 2 | } |
|
21 | |||
22 | 2 | public function dispatch(object $event): object |
|
23 | { |
||
24 | 2 | foreach ($this->listenerProvider->getListenersForEvent($event) as $listener) { |
|
25 | 2 | if ($event instanceof StoppableEventInterface && $event->isPropagationStopped()) { |
|
26 | 1 | return $event; |
|
27 | } |
||
28 | 2 | ||
29 | $this->handle($event, $listener); |
||
30 | } |
||
31 | 1 | ||
32 | return $event; |
||
33 | } |
||
34 | |||
35 | private function handle(object $event, callable $listener) |
||
38 | } |
||
39 | } |
||
40 |