|
3 | 3 | import requests |
4 | 4 | from .types import SDKInitHook, BeforeRequestContext, BeforeRequestHook, AfterSuccessContext, AfterSuccessHook, AfterErrorContext, AfterErrorHook, Hooks |
5 | 5 | from .registration import init_hooks |
6 | | -from typing import List, Optional, Tuple, Union |
| 6 | +from typing import List, Optional, Tuple |
7 | 7 |
|
8 | 8 |
|
9 | 9 | class SDKHooks(Hooks): |
@@ -31,19 +31,21 @@ def sdk_init(self, base_url: str, client: requests.Session) -> Tuple[str, reques |
31 | 31 | base_url, client = hook.sdk_init(base_url, client) |
32 | 32 | return base_url, client |
33 | 33 |
|
34 | | - def before_request(self, hook_ctx: BeforeRequestContext, request: requests.PreparedRequest) -> Union[requests.PreparedRequest, Exception]: |
| 34 | + def before_request(self, hook_ctx: BeforeRequestContext, request: requests.PreparedRequest) -> requests.PreparedRequest: |
35 | 35 | for hook in self.before_request_hooks: |
36 | | - request = hook.before_request(hook_ctx, request) |
37 | | - if isinstance(request, Exception): |
38 | | - raise request |
| 36 | + out = hook.before_request(hook_ctx, request) |
| 37 | + if isinstance(out, Exception): |
| 38 | + raise out |
| 39 | + request = out |
39 | 40 |
|
40 | 41 | return request |
41 | 42 |
|
42 | 43 | def after_success(self, hook_ctx: AfterSuccessContext, response: requests.Response) -> requests.Response: |
43 | 44 | for hook in self.after_success_hooks: |
44 | | - response = hook.after_success(hook_ctx, response) |
45 | | - if isinstance(response, Exception): |
46 | | - raise response |
| 45 | + out = hook.after_success(hook_ctx, response) |
| 46 | + if isinstance(out, Exception): |
| 47 | + raise out |
| 48 | + response = out |
47 | 49 | return response |
48 | 50 |
|
49 | 51 | def after_error(self, hook_ctx: AfterErrorContext, response: Optional[requests.Response], error: Optional[Exception]) -> Tuple[Optional[requests.Response], Optional[Exception]]: |
|
0 commit comments