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