blob: d374238315f9dd46346f8dfb4a68cf49b8700493 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
<?php
declare(strict_types=1);
namespace BrettParson\MiniRoute\Tests\Fixtures;
use BrettParson\MiniRoute\Http\RequestInterface;
use BrettParson\MiniRoute\Http\ResponseInterface;
use BrettParson\MiniRoute\Middleware\MiddlewareInterface;
/**
* Deliberately stateful middleware. Probes the singleton-container leak:
* when a resolver returns the same instance per request, state accumulates
* across dispatches (usage contract; ADR work in miniroute-k4i.3).
*/
final class StatefulMiddleware implements MiddlewareInterface
{
public int $count = 0;
public function handle(RequestInterface $request, callable $next): ResponseInterface
{
$this->count++;
return $next($request);
}
}
|