Result   A
last analyzed

Complexity

Total Complexity 9

Size/Duplication

Total Lines 88
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 17
c 1
b 0
f 0
dl 0
loc 88
rs 10
wmc 9

8 Methods

Rating   Name   Duplication   Size   Complexity  
A getRequest() 0 3 1
A __construct() 0 3 1
A getHandler() 0 3 1
A setRoute() 0 4 1
A setHandler() 0 4 1
A isMatched() 0 6 2
A setRequest() 0 4 1
A getRoute() 0 3 1
1
<?php
2
3
/**
4
 * Phoole (PHP7.2+)
5
 *
6
 * @category  Library
7
 * @package   Phoole\Route
8
 * @copyright Copyright (c) 2019 Hong Zhang
9
 */
10
declare(strict_types=1);
11
12
namespace Phoole\Route\Util;
13
14
use Psr\Http\Message\ServerRequestInterface;
15
16
/**
17
 * Result
18
 *
19
 * @package Phoole\Route
20
 */
21
class Result
22
{
23
    /**
24
     * @var Route the matched route
25
     */
26
    protected $route;
27
28
    /**
29
     * @var ServerRequestInterface
30
     */
31
    protected $request;
32
33
    /**
34
     * @var mixed
35
     */
36
    protected $handler;
37
38
    /**
39
     * @param  ServerRequestInterface $request
40
     */
41
    public function __construct(ServerRequestInterface $request)
42
    {
43
        $this->setRequest($request);
44
    }
45
46
    /**
47
     * @return Route
48
     */
49
    public function getRoute(): Route
50
    {
51
        return $this->route;
52
    }
53
54
    /**
55
     * @param  Route $route
56
     * @return $this
57
     */
58
    public function setRoute(Route $route)
59
    {
60
        $this->route = $route;
61
        return $this;
62
    }
63
64
    /**
65
     * @return ServerRequestInterface
66
     */
67
    public function getRequest(): ServerRequestInterface
68
    {
69
        return $this->request;
70
    }
71
72
    /**
73
     * @param  ServerRequestInterface $request
74
     * @return $this
75
     */
76
    public function setRequest(ServerRequestInterface $request)
77
    {
78
        $this->request = $request;
79
        return $this;
80
    }
81
82
    /**
83
     * @return mixed
84
     */
85
    public function getHandler()
86
    {
87
        return $this->handler;
88
    }
89
90
    /**
91
     * @param  mixed $handler
92
     * @return $this
93
     */
94
    public function setHandler($handler)
95
    {
96
        $this->handler = $handler;
97
        return $this;
98
    }
99
100
    /**
101
     * @return bool
102
     */
103
    public function isMatched(): bool
104
    {
105
        if ($this->route) {
106
            return TRUE;
107
        }
108
        return FALSE;
109
    }
110
}