@@ 76-91 (lines=16) @@ | ||
73 | $this->middleware = $this->options[Options::MIDDLEWARE]; |
|
74 | } |
|
75 | } |
|
76 | protected function preRequest( |
|
77 | array $middlewares, |
|
78 | RequestInterface $request, |
|
79 | array $options |
|
80 | ): CancellablePromiseInterface { |
|
81 | $promise = resolve($request); |
|
82 | ||
83 | foreach ($middlewares as $middleware) { |
|
84 | $requestMiddleware = $middleware; |
|
85 | $promise = $promise->then(function (RequestInterface $request) use ($options, $requestMiddleware) { |
|
86 | return $requestMiddleware->pre($request, $options); |
|
87 | }); |
|
88 | } |
|
89 | ||
90 | return $promise; |
|
91 | } |
|
92 | ||
93 | protected function postRequest( |
|
94 | array $middlewares, |
|
@@ 93-108 (lines=16) @@ | ||
90 | return $promise; |
|
91 | } |
|
92 | ||
93 | protected function postRequest( |
|
94 | array $middlewares, |
|
95 | ResponseInterface $response, |
|
96 | array $options |
|
97 | ): CancellablePromiseInterface { |
|
98 | $promise = resolve($response); |
|
99 | ||
100 | foreach ($middlewares as $middleware) { |
|
101 | $responseMiddleware = $middleware; |
|
102 | $promise = $promise->then(function (ResponseInterface $response) use ($options, $responseMiddleware) { |
|
103 | return $responseMiddleware->post($response, $options); |
|
104 | }); |
|
105 | } |
|
106 | ||
107 | return $promise; |
|
108 | } |
|
109 | ||
110 | protected function constructMiddlewares(array $options): array |
|
111 | { |