StoppableEventTrait   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Test Coverage

Coverage 50%

Importance

Changes 0
Metric Value
eloc 4
dl 0
loc 22
ccs 2
cts 4
cp 0.5
rs 10
c 0
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A stopPropagation() 0 3 1
A isPropagationStopped() 0 3 1
1
<?php
2
3
namespace ByTIC\EventDispatcher\Events\Traits;
4
5
/**
6
 * Trait StoppableEventTrait
7
 * @package ByTIC\EventDispatcher\Events\Traits
8
 */
9
trait StoppableEventTrait
10
{
11
    private $propagationStopped = false;
12
13
    /**
14
     * Returns whether further event listeners should be triggered.
15
     */
16 2
    public function isPropagationStopped(): bool
17
    {
18 2
        return $this->propagationStopped;
19
    }
20
21
    /**
22
     * Stops the propagation of the event to further event listeners.
23
     *
24
     * If multiple event listeners are connected to the same event, no
25
     * further event listener will be triggered once any trigger calls
26
     * stopPropagation().
27
     */
28
    public function stopPropagation(): void
29
    {
30
        $this->propagationStopped = true;
31
    }
32
}
33