Skip to content

Commit 9ee1439

Browse files
adamtheturtleclaude
andcommitted
Move 429/5xx handling back to make_request
Now that generate_vumark_instance uses make_request, _target_api_request can be a pure sign-and-send function again. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent b9e9382 commit 9ee1439

File tree

1 file changed

+12
-20
lines changed

1 file changed

+12
-20
lines changed

src/vws/vws.py

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -95,12 +95,6 @@ def _target_api_request(
9595
9696
Returns:
9797
The response to the request made by `requests`.
98-
99-
Raises:
100-
~vws.exceptions.custom_exceptions.ServerError: There is an error
101-
with Vuforia's servers.
102-
~vws.exceptions.vws_exceptions.TooManyRequestsError: Vuforia is
103-
rate limiting access.
10498
"""
10599
date_string = rfc_1123_date()
106100

@@ -131,7 +125,7 @@ def _target_api_request(
131125
timeout=request_timeout_seconds,
132126
)
133127

134-
response = Response(
128+
return Response(
135129
text=requests_response.text,
136130
url=requests_response.url,
137131
status_code=requests_response.status_code,
@@ -141,19 +135,6 @@ def _target_api_request(
141135
content=bytes(requests_response.content),
142136
)
143137

144-
if (
145-
response.status_code == HTTPStatus.TOO_MANY_REQUESTS
146-
): # pragma: no cover
147-
# The Vuforia API returns a 429 response with no JSON body.
148-
raise TooManyRequestsError(response=response)
149-
150-
if (
151-
response.status_code >= HTTPStatus.INTERNAL_SERVER_ERROR
152-
): # pragma: no cover
153-
raise ServerError(response=response)
154-
155-
return response
156-
157138

158139
@beartype(conf=BeartypeConf(is_pep484_tower=True))
159140
class VWS:
@@ -232,6 +213,17 @@ def make_request(
232213
extra_headers=extra_headers,
233214
)
234215

216+
if (
217+
response.status_code == HTTPStatus.TOO_MANY_REQUESTS
218+
): # pragma: no cover
219+
# The Vuforia API returns a 429 response with no JSON body.
220+
raise TooManyRequestsError(response=response)
221+
222+
if (
223+
response.status_code >= HTTPStatus.INTERNAL_SERVER_ERROR
224+
): # pragma: no cover
225+
raise ServerError(response=response)
226+
235227
if (
236228
response.status_code == HTTPStatus.OK
237229
and expected_result_code is None

0 commit comments

Comments
 (0)