Completed
Push — master ( 94b286...8ac024 )
by Joao
06:47
created

WhoopsHeaderTrait   A

Complexity

Total Complexity 10

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 3
Bugs 2 Features 1
Metric Value
wmc 10
c 3
b 2
f 1
lcom 0
cbo 0
dl 0
loc 25
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
C setProperHeader() 0 22 10
1
<?php
2
3
namespace ByJG\RestServer\Whoops;
4
5
trait WhoopsHeaderTrait
6
{
7
    public function setProperHeader(\Exception $exception)
8
    {
9
        if ($exception instanceof \ByJG\RestServer\Exception\Error401Exception) {
10
            header('HTTP/1.0 401 Unathorized', true, 401);
11
        } elseif ($exception instanceof \ByJG\RestServer\Exception\Error402Exception) {
12
            header('HTTP/1.0 402 Payment Required', true, 402);
13
        } elseif ($exception instanceof \ByJG\RestServer\Exception\Error403Exception) {
14
            header('HTTP/1.0 403 Forbidden', true, 403);
15
        } elseif ($exception instanceof \ByJG\RestServer\Exception\Error404Exception) {
16
            header('HTTP/1.0 404 Not Found', true, 404);
17
        } elseif ($exception instanceof \ByJG\RestServer\Exception\ClassNotFoundException) {
18
            header('HTTP/1.0 404 Not Found', true, 404);
19
        } elseif ($exception instanceof \ByJG\RestServer\Exception\Error405Exception) {
20
            header('HTTP/1.0 405 Method not allowed', true, 405);
21
        } elseif ($exception instanceof \ByJG\RestServer\Exception\Error501Exception) {
22
            header('HTTP/1.0 501 Not Implemented', true, 501);
23
        } elseif ($exception instanceof \BadMethodCallException) {
24
            header('HTTP/1.0 501 Not Implemented', true, 501);
25
        } elseif ($exception instanceof \ByJG\RestServer\Exception\Error520Exception) {
26
            header('HTTP/1.0 520 Unknow Error', true, 501);
27
        }
28
    }
29
}
30