Skip to content

Commit fb118dd

Browse files
box-sdk-buildbox-sdk-build
andauthored
feat: Add support for replacing the network client implementation (box/box-codegen#629) (#415)
Co-authored-by: box-sdk-build <box-sdk-build@box.com>
1 parent 578d9b4 commit fb118dd

File tree

82 files changed

+1226
-1279
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+1226
-1279
lines changed

.codegen.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{ "engineHash": "264bdc9", "specHash": "6886603", "version": "1.8.0" }
1+
{ "engineHash": "ce7ab17", "specHash": "6886603", "version": "1.8.0" }

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,15 @@ Embrace the new generation of Box SDKs and unlock the full potential of the Box
2828
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
2929
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
3030

31+
- [Box Python SDK GENERATED](#box-python-sdk-generated)
32+
- [Table of contents](#table-of-contents)
3133
- [Installing](#installing)
3234
- [Getting Started](#getting-started)
3335
- [Documentation](#documentation)
3436
- [Upgrades](#upgrades)
3537
- [Integration Tests](#integration-tests)
3638
- [Running integration tests locally](#running-integration-tests-locally)
37-
- [Create Custom Application](#create-custom-application)
39+
- [Create Platform Application](#create-platform-application)
3840
- [Export configuration](#export-configuration)
3941
- [Running tests](#running-tests)
4042
- [Questions, Bugs, and Feature Requests?](#questions-bugs-and-feature-requests)
@@ -93,7 +95,7 @@ Upgrading from our legacy SDKs to the new generation SDKs is a straightforward p
9395

9496
## Running integration tests locally
9597

96-
### Create Custom Application
98+
### Create Platform Application
9799

98100
To run integration tests locally you will need a `Custom App` created in the [Box Developer
99101
Console](https://app.box.com/developers/console)

box_sdk_gen/box/oauth.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ def refresh_token(
161161
self, *, network_session: Optional[NetworkSession] = None
162162
) -> AccessToken:
163163
"""
164-
Get a new access token for the app user.
164+
Get a new access token for the platform app user.
165165
:param network_session: An object to keep network session state, defaults to None
166166
:type network_session: Optional[NetworkSession], optional
167167
"""

box_sdk_gen/client.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -168,15 +168,15 @@
168168

169169
from box_sdk_gen.networking.network import NetworkSession
170170

171-
from box_sdk_gen.networking.base_urls import BaseUrls
172-
173-
from box_sdk_gen.networking.proxy_config import ProxyConfig
171+
from box_sdk_gen.box.errors import BoxSDKError
174172

175173
from box_sdk_gen.networking.fetch_options import FetchOptions
176174

177175
from box_sdk_gen.networking.fetch_response import FetchResponse
178176

179-
from box_sdk_gen.networking.fetch import fetch
177+
from box_sdk_gen.networking.base_urls import BaseUrls
178+
179+
from box_sdk_gen.networking.proxy_config import ProxyConfig
180180

181181

182182
class BoxClient:
@@ -426,7 +426,7 @@ def make_request(self, fetch_options: FetchOptions) -> FetchResponse:
426426
response_format=fetch_options.response_format,
427427
follow_redirects=fetch_options.follow_redirects,
428428
)
429-
return fetch(enriched_fetch_options)
429+
return network_session.network_client.fetch(enriched_fetch_options)
430430

431431
def with_as_user_header(self, user_id: str) -> 'BoxClient':
432432
"""

box_sdk_gen/managers/ai.py

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,6 @@
2828

2929
from box_sdk_gen.schemas.ai_ask import AiAsk
3030

31-
from box_sdk_gen.box.errors import BoxSDKError
32-
3331
from box_sdk_gen.schemas.ai_response import AiResponse
3432

3533
from box_sdk_gen.schemas.ai_text_gen import AiTextGen
@@ -48,22 +46,22 @@
4846

4947
from box_sdk_gen.schemas.ai_extract_structured import AiExtractStructured
5048

49+
from box_sdk_gen.box.errors import BoxSDKError
50+
5151
from box_sdk_gen.networking.auth import Authentication
5252

5353
from box_sdk_gen.networking.network import NetworkSession
5454

55+
from box_sdk_gen.networking.fetch_options import FetchOptions
56+
57+
from box_sdk_gen.networking.fetch_response import FetchResponse
58+
5559
from box_sdk_gen.internal.utils import prepare_params
5660

5761
from box_sdk_gen.internal.utils import to_string
5862

5963
from box_sdk_gen.internal.utils import ByteStream
6064

61-
from box_sdk_gen.networking.fetch_options import FetchOptions
62-
63-
from box_sdk_gen.networking.fetch_response import FetchResponse
64-
65-
from box_sdk_gen.networking.fetch import fetch
66-
6765
from box_sdk_gen.serialization.json import SerializedData
6866

6967
from box_sdk_gen.serialization.json import sd_to_json
@@ -251,7 +249,7 @@ def create_ai_ask(
251249
'ai_agent': ai_agent,
252250
}
253251
headers_map: Dict[str, str] = prepare_params({**extra_headers})
254-
response: FetchResponse = fetch(
252+
response: FetchResponse = self.network_session.network_client.fetch(
255253
FetchOptions(
256254
url=''.join([self.network_session.base_urls.base_url, '/2.0/ai/ask']),
257255
method='POST',
@@ -298,7 +296,7 @@ def create_ai_text_gen(
298296
'ai_agent': ai_agent,
299297
}
300298
headers_map: Dict[str, str] = prepare_params({**extra_headers})
301-
response: FetchResponse = fetch(
299+
response: FetchResponse = self.network_session.network_client.fetch(
302300
FetchOptions(
303301
url=''.join(
304302
[self.network_session.base_urls.base_url, '/2.0/ai/text_gen']
@@ -344,7 +342,7 @@ def get_ai_agent_default_config(
344342
}
345343
)
346344
headers_map: Dict[str, str] = prepare_params({**extra_headers})
347-
response: FetchResponse = fetch(
345+
response: FetchResponse = self.network_session.network_client.fetch(
348346
FetchOptions(
349347
url=''.join(
350348
[self.network_session.base_urls.base_url, '/2.0/ai_agent_default']
@@ -389,7 +387,7 @@ def create_ai_extract(
389387
extra_headers = {}
390388
request_body: Dict = {'prompt': prompt, 'items': items, 'ai_agent': ai_agent}
391389
headers_map: Dict[str, str] = prepare_params({**extra_headers})
392-
response: FetchResponse = fetch(
390+
response: FetchResponse = self.network_session.network_client.fetch(
393391
FetchOptions(
394392
url=''.join(
395393
[self.network_session.base_urls.base_url, '/2.0/ai/extract']
@@ -448,7 +446,7 @@ def create_ai_extract_structured(
448446
'ai_agent': ai_agent,
449447
}
450448
headers_map: Dict[str, str] = prepare_params({**extra_headers})
451-
response: FetchResponse = fetch(
449+
response: FetchResponse = self.network_session.network_client.fetch(
452450
FetchOptions(
453451
url=''.join(
454452
[

box_sdk_gen/managers/app_item_associations.py

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@
1818

1919
from box_sdk_gen.networking.network import NetworkSession
2020

21+
from box_sdk_gen.networking.fetch_options import FetchOptions
22+
23+
from box_sdk_gen.networking.fetch_response import FetchResponse
24+
2125
from box_sdk_gen.internal.utils import prepare_params
2226

2327
from box_sdk_gen.internal.utils import to_string
@@ -26,12 +30,6 @@
2630

2731
from box_sdk_gen.serialization.json import sd_to_json
2832

29-
from box_sdk_gen.networking.fetch_options import FetchOptions
30-
31-
from box_sdk_gen.networking.fetch_response import FetchResponse
32-
33-
from box_sdk_gen.networking.fetch import fetch
34-
3533
from box_sdk_gen.serialization.json import SerializedData
3634

3735

@@ -101,7 +99,7 @@ def get_file_app_item_associations(
10199
}
102100
)
103101
headers_map: Dict[str, str] = prepare_params({**extra_headers})
104-
response: FetchResponse = fetch(
102+
response: FetchResponse = self.network_session.network_client.fetch(
105103
FetchOptions(
106104
url=''.join(
107105
[
@@ -178,7 +176,7 @@ def get_folder_app_item_associations(
178176
}
179177
)
180178
headers_map: Dict[str, str] = prepare_params({**extra_headers})
181-
response: FetchResponse = fetch(
179+
response: FetchResponse = self.network_session.network_client.fetch(
182180
FetchOptions(
183181
url=''.join(
184182
[

box_sdk_gen/managers/authorization.py

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@
1818

1919
from box_sdk_gen.networking.fetch_options import ResponseFormat
2020

21-
from box_sdk_gen.box.errors import BoxSDKError
22-
2321
from box_sdk_gen.schemas.access_token import AccessToken
2422

2523
from box_sdk_gen.schemas.o_auth_2_error import OAuth2Error
@@ -32,10 +30,16 @@
3230

3331
from box_sdk_gen.schemas.post_o_auth_2_revoke import PostOAuth2Revoke
3432

33+
from box_sdk_gen.box.errors import BoxSDKError
34+
3535
from box_sdk_gen.networking.auth import Authentication
3636

3737
from box_sdk_gen.networking.network import NetworkSession
3838

39+
from box_sdk_gen.networking.fetch_options import FetchOptions
40+
41+
from box_sdk_gen.networking.fetch_response import FetchResponse
42+
3943
from box_sdk_gen.internal.utils import prepare_params
4044

4145
from box_sdk_gen.internal.utils import to_string
@@ -44,12 +48,6 @@
4448

4549
from box_sdk_gen.serialization.json import sd_to_json
4650

47-
from box_sdk_gen.networking.fetch_options import FetchOptions
48-
49-
from box_sdk_gen.networking.fetch_response import FetchResponse
50-
51-
from box_sdk_gen.networking.fetch import fetch
52-
5351
from box_sdk_gen.serialization.json import SerializedData
5452

5553

@@ -172,7 +170,7 @@ def authorize_user(
172170
}
173171
)
174172
headers_map: Dict[str, str] = prepare_params({**extra_headers})
175-
response: FetchResponse = fetch(
173+
response: FetchResponse = self.network_session.network_client.fetch(
176174
FetchOptions(
177175
url=''.join([self.network_session.base_urls.oauth_2_url, '/authorize']),
178176
method='GET',
@@ -326,7 +324,7 @@ def request_access_token(
326324
'box_shared_link': box_shared_link,
327325
}
328326
headers_map: Dict[str, str] = prepare_params({**extra_headers})
329-
response: FetchResponse = fetch(
327+
response: FetchResponse = self.network_session.network_client.fetch(
330328
FetchOptions(
331329
url=''.join([self.network_session.base_urls.base_url, '/oauth2/token']),
332330
method='POST',
@@ -371,7 +369,7 @@ def refresh_access_token(
371369
'refresh_token': refresh_token,
372370
}
373371
headers_map: Dict[str, str] = prepare_params({**extra_headers})
374-
response: FetchResponse = fetch(
372+
response: FetchResponse = self.network_session.network_client.fetch(
375373
FetchOptions(
376374
url=''.join(
377375
[self.network_session.base_urls.base_url, '/oauth2/token#refresh']
@@ -419,7 +417,7 @@ def revoke_access_token(
419417
'token': token,
420418
}
421419
headers_map: Dict[str, str] = prepare_params({**extra_headers})
422-
response: FetchResponse = fetch(
420+
response: FetchResponse = self.network_session.network_client.fetch(
423421
FetchOptions(
424422
url=''.join(
425423
[self.network_session.base_urls.base_url, '/oauth2/revoke']

box_sdk_gen/managers/avatars.py

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,26 +10,24 @@
1010

1111
from box_sdk_gen.schemas.client_error import ClientError
1212

13-
from box_sdk_gen.box.errors import BoxSDKError
14-
1513
from box_sdk_gen.schemas.user_avatar import UserAvatar
1614

15+
from box_sdk_gen.box.errors import BoxSDKError
16+
1717
from box_sdk_gen.networking.auth import Authentication
1818

1919
from box_sdk_gen.networking.network import NetworkSession
2020

21+
from box_sdk_gen.networking.fetch_options import FetchOptions
22+
23+
from box_sdk_gen.networking.fetch_response import FetchResponse
24+
2125
from box_sdk_gen.internal.utils import prepare_params
2226

2327
from box_sdk_gen.internal.utils import to_string
2428

2529
from box_sdk_gen.internal.utils import ByteStream
2630

27-
from box_sdk_gen.networking.fetch_options import FetchOptions
28-
29-
from box_sdk_gen.networking.fetch_response import FetchResponse
30-
31-
from box_sdk_gen.networking.fetch import fetch
32-
3331
from box_sdk_gen.serialization.json import sd_to_json
3432

3533
from box_sdk_gen.networking.fetch_options import MultipartItem
@@ -63,7 +61,7 @@ def get_user_avatar(
6361
if extra_headers is None:
6462
extra_headers = {}
6563
headers_map: Dict[str, str] = prepare_params({**extra_headers})
66-
response: FetchResponse = fetch(
64+
response: FetchResponse = self.network_session.network_client.fetch(
6765
FetchOptions(
6866
url=''.join(
6967
[
@@ -111,7 +109,7 @@ def create_user_avatar(
111109
'pic_content_type': pic_content_type,
112110
}
113111
headers_map: Dict[str, str] = prepare_params({**extra_headers})
114-
response: FetchResponse = fetch(
112+
response: FetchResponse = self.network_session.network_client.fetch(
115113
FetchOptions(
116114
url=''.join(
117115
[
@@ -156,7 +154,7 @@ def delete_user_avatar(
156154
if extra_headers is None:
157155
extra_headers = {}
158156
headers_map: Dict[str, str] = prepare_params({**extra_headers})
159-
response: FetchResponse = fetch(
157+
response: FetchResponse = self.network_session.network_client.fetch(
160158
FetchOptions(
161159
url=''.join(
162160
[

0 commit comments

Comments
 (0)