progetto fatto precedentemente adattato al framework creato con il corso
filippo.bertilotti
2024-06-11 a13080a7484e40a5fb87fa2fe1980856eb60f252
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
 
declare(strict_types= 1);
 
namespace Framework;
 
class MiddlewareRequestHandler implements RequestHandlerInterface {
    public function __construct(private array $middlewares,
                                private ControllerRequestHandler $controller_handler) {
        
    }
    public function handle(Request $request) : Response {
        $middleware = array_shift($this->middlewares);
 
        if($middleware === null) {
            return $this->controller_handler->handle($request);
        }
 
        return $middleware->process($request, $this);
    }
}