Code

< 40 %
40-60 %
> 60 %
1
<?php declare(strict_types=1);
2
3
namespace Phact\Router;
4
5
use Psr\Http\Server\MiddlewareInterface;
6
7
class Route implements RouterHandler
8
{
9
    /**
10
     * @var mixed
11
     */
12
    protected $originalHandler;
13
    /**
14
     * @var MiddlewareInterface[]
15
     */
16
    protected $middlewares;
17
    /**
18
     * @var string|null
19
     */
20
    private $name;
21
22
    /**
23
     * Handler constructor.
24
     *
25
     * @param mixed $originalHandler
26
     * @param array $middlewares
27
     * @param string|null $name
28
     */
29 24
    public function __construct($originalHandler, ?string $name = null, array $middlewares = [])
30
    {
31 24
        $this->originalHandler = $originalHandler;
32 24
        $this->middlewares = $middlewares;
33 24
        $this->name = $name;
34 24
    }
35
36
    /**
37
     * Get route original handler
38
     *
39
     * @return mixed
40
     */
41 16
    public function getOriginalHandler()
42
    {
43 16
        return $this->originalHandler;
44
    }
45
46
    /**
47
     * Get route Middlewares
48
     *
49
     * @return array
50
     */
51 18
    public function getMiddlewares(): array
52
    {
53 18
        return $this->middlewares;
54
    }
55
56
    /**
57
     * Get route name
58
     *
59
     * @return string|null
60
     */
61 16
    public function getName(): ?string
62
    {
63 16
        return $this->name;
64
    }
65
}
66