Completed
Pull Request — master (#12)
by Tyler
03:55
created

Component::shouldntHandle()   A

Complexity

Conditions 3
Paths 3

Size

Total Lines 11
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 6
CRAP Score 3.0261

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 11
ccs 6
cts 7
cp 0.8571
rs 9.4285
cc 3
eloc 6
nc 3
nop 1
crap 3.0261
1
<?php
2
3
namespace Tylercd100\LERN\Components;
4
5
use Exception;
6
7
abstract class Component {
8
9
    /**
10
     * @var array
11
     */
12
    protected $dontHandle = [];
13
14
    /**
15
     * @var array
16
     */
17
    private $absolutelyDontHandle = [
18
        Tylercd100\LERN\Exceptions\LERNExceptionInterface::class,
19
    ];
20
21
    /**
22
     * Determine if the exception is in the "do not report" list.
23
     *
24
     * @param  \Exception  $e
25
     * @return bool
26
     */
27
    protected function shouldHandle(Exception $e){
28
        return !$this->shouldHandle($e);
29
    }
30
31
    /**
32
     * Determine if the exception is in the "do not report" list.
33
     *
34
     * @param  \Exception  $e
35
     * @return bool
36
     */
37 9
    protected function shouldntHandle(Exception $e){
38 9
        $dontHandle = array_merge($this->dontHandle,$this->absolutelyDontHandle);
39
40 9
        foreach ($dontHandle as $type) {
41 9
            if ($e instanceof $type) {
42
                return true;
43
            }
44 9
        }
45
46 9
        return false;
47
    }
48
}