ExceptionFactory   A
last analyzed

Complexity

Total Complexity 16

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 15

Importance

Changes 0
Metric Value
wmc 16
lcom 0
cbo 15
dl 0
loc 25
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
C make() 0 22 16
1
<?php
2
3
namespace PragmaRX\Tracker\Support\Exceptions;
4
5
class ExceptionFactory
6
{
7
    public static function make($errorCode, $errorMessage)
8
    {
9
        switch ($errorCode) {
10
            case E_ERROR:               return new Error($errorMessage, $errorCode);
11
            case E_WARNING:             return new Warning($errorMessage, $errorCode);
12
            case E_PARSE:               return new Parse($errorMessage, $errorCode);
13
            case E_NOTICE:              return new Notice($errorMessage, $errorCode);
14
            case E_CORE_ERROR:          return new CoreError($errorMessage, $errorCode);
15
            case E_CORE_WARNING:        return new CoreWarning($errorMessage, $errorCode);
16
            case E_COMPILE_ERROR:       return new CompileError($errorMessage, $errorCode);
17
            case E_COMPILE_WARNING:     return new CompileWarning($errorMessage, $errorCode);
18
            case E_USER_ERROR:          return new UserError($errorMessage, $errorCode);
19
            case E_USER_WARNING:        return new UserWarning($errorMessage, $errorCode);
20
            case E_USER_NOTICE:         return new UserNotice($errorMessage, $errorCode);
21
            case E_STRICT:              return new Strict($errorMessage, $errorCode);
22
            case E_RECOVERABLE_ERROR:   return new RecoverableError($errorMessage, $errorCode);
23
            case E_DEPRECATED:          return new Deprecated($errorMessage, $errorCode);
24
            case E_USER_DEPRECATED:     return new UserDeprecated($errorMessage, $errorCode);
25
        }
26
27
        return new Error($errorMessage, $errorCode);
28
    }
29
}
30