@@ 73-88 (lines=16) @@ | ||
70 | * @param ResponseInterface $response |
|
71 | * @return CancellablePromiseInterface |
|
72 | */ |
|
73 | public function post( |
|
74 | ResponseInterface $response |
|
75 | ): CancellablePromiseInterface { |
|
76 | $promise = resolve($response); |
|
77 | ||
78 | $this->middlewares = array_reverse($this->middlewares); |
|
79 | ||
80 | foreach ($this->middlewares as $middleware) { |
|
81 | $responseMiddleware = $middleware; |
|
82 | $promise = $promise->then(function (ResponseInterface $response) use ($responseMiddleware) { |
|
83 | return $responseMiddleware->post($response, $this->options); |
|
84 | }); |
|
85 | } |
|
86 | ||
87 | return $promise; |
|
88 | } |
|
89 | ||
90 | /** |
|
91 | * @param Throwable $throwable |
|
@@ 94-110 (lines=17) @@ | ||
91 | * @param Throwable $throwable |
|
92 | * @return CancellablePromiseInterface |
|
93 | */ |
|
94 | public function error( |
|
95 | Throwable $throwable |
|
96 | ): CancellablePromiseInterface { |
|
97 | ||
98 | $promise = reject($throwable); |
|
99 | ||
100 | $this->middlewares = array_reverse($this->middlewares); |
|
101 | ||
102 | foreach ($this->middlewares as $middleware) { |
|
103 | $errorMiddleware = $middleware; |
|
104 | $promise = $promise->then(null, function (Throwable $throwable) use ($errorMiddleware) { |
|
105 | return reject($errorMiddleware->error($throwable, $this->options)); |
|
106 | }); |
|
107 | } |
|
108 | ||
109 | return $promise; |
|
110 | } |
|
111 | } |
|
112 |