Conditions | 5 |
Paths | 6 |
Total Lines | 20 |
Code Lines | 12 |
Lines | 0 |
Ratio | 0 % |
Changes | 0 |
1 | <?php |
||
35 | public function __invoke(Query $query, callable $next = null) : QueryResponse |
||
36 | { |
||
37 | $middleware = $this->middleware; |
||
38 | $current = array_shift($middleware); |
||
39 | |||
40 | if (!empty($middleware)) { |
||
41 | foreach ($middleware as $queryBusMiddleware) { |
||
42 | $callable = function ($query) use ($queryBusMiddleware) { |
||
43 | return $queryBusMiddleware->__invoke($query); |
||
44 | }; |
||
45 | |||
46 | $response = $current->__invoke($query, $callable); |
||
47 | $current = $queryBusMiddleware; |
||
48 | } |
||
49 | } elseif ($current) { |
||
50 | $response = $current->__invoke($query); |
||
51 | } |
||
52 | |||
53 | return (!empty($response)) ? $response : EmptyResponse::create(); |
||
54 | } |
||
55 | } |
||
56 |