55from unstructured_client import utils
66from unstructured_client .models import errors , operations , shared
77
8+
89class General :
910 sdk_configuration : SDKConfiguration
1011
1112 def __init__ (self , sdk_config : SDKConfiguration ) -> None :
1213 self .sdk_configuration = sdk_config
13-
14-
15-
16- def partition (self , request : shared .PartitionParameters , retries : Optional [utils .RetryConfig ] = None ) -> operations .PartitionResponse :
14+
15+ def partition (
16+ self ,
17+ request : shared .PartitionParameters ,
18+ retries : Optional [utils .RetryConfig ] = None ,
19+ ) -> operations .PartitionResponse :
1720 r"""Pipeline 1"""
1821 base_url = utils .template_url (* self .sdk_configuration .get_server_details ())
19-
20- url = base_url + ' /general/v0/general'
22+
23+ url = base_url + " /general/v0/general"
2124 headers = {}
22- req_content_type , data , form = utils .serialize_request_body (request , "request" , False , True , 'multipart' )
23- if req_content_type not in ('multipart/form-data' , 'multipart/mixed' ):
24- headers ['content-type' ] = req_content_type
25- headers ['Accept' ] = 'application/json'
26- headers ['user-agent' ] = self .sdk_configuration .user_agent
27-
25+ req_content_type , data , form = utils .serialize_request_body (
26+ request , "request" , False , True , "multipart"
27+ )
28+ if req_content_type not in ("multipart/form-data" , "multipart/mixed" ):
29+ headers ["content-type" ] = req_content_type
30+ headers ["Accept" ] = "application/json"
31+ headers ["user-agent" ] = self .sdk_configuration .user_agent
32+
2833 if callable (self .sdk_configuration .security ):
29- client = utils .configure_security_client (self .sdk_configuration .client , self .sdk_configuration .security ())
34+ client = utils .configure_security_client (
35+ self .sdk_configuration .client , self .sdk_configuration .security ()
36+ )
3037 else :
31- client = utils .configure_security_client (self .sdk_configuration .client , self .sdk_configuration .security )
32-
38+ client = utils .configure_security_client (
39+ self .sdk_configuration .client , self .sdk_configuration .security
40+ )
41+
3342 global_retry_config = self .sdk_configuration .retry_config
3443 retry_config = retries
3544 if retry_config is None :
3645 if global_retry_config :
3746 retry_config = global_retry_config
3847 else :
39- retry_config = utils .RetryConfig ('backoff' , utils .BackoffStrategy (500 , 60000 , 1.5 , 3600000 ), True )
48+ retry_config = utils .RetryConfig (
49+ "backoff" , utils .BackoffStrategy (500 , 60000 , 1.5 , 3600000 ), True
50+ )
4051
4152 def do_request ():
42- return client .request ('POST' , url , data = data , files = form , headers = headers )
53+ return client .request ("POST" , url , data = data , files = form , headers = headers )
54+
55+ http_res = utils .retry (do_request , utils .Retries (retry_config , ["5xx" ]))
56+ content_type = http_res .headers .get ("Content-Type" )
4357
44- http_res = utils .retry (do_request , utils .Retries (retry_config , [
45- '5xx'
46- ]))
47- content_type = http_res .headers .get ('Content-Type' )
58+ res = operations .PartitionResponse (
59+ status_code = http_res .status_code ,
60+ content_type = content_type ,
61+ raw_response = http_res ,
62+ )
4863
49- res = operations .PartitionResponse (status_code = http_res .status_code , content_type = content_type , raw_response = http_res )
50-
5164 if http_res .status_code == 200 :
52- if utils .match_content_type (content_type , ' application/json' ):
65+ if utils .match_content_type (content_type , " application/json" ):
5366 out = utils .unmarshal_json (http_res .text , Optional [List [Any ]])
5467 res .elements = out
5568 else :
56- raise errors .SDKError (f'unknown content-type received: { content_type } ' , http_res .status_code , http_res .text , http_res )
69+ raise errors .SDKError (
70+ f"unknown content-type received: { content_type } " ,
71+ http_res .status_code ,
72+ http_res .text ,
73+ http_res ,
74+ )
5775 elif http_res .status_code == 422 :
58- if utils .match_content_type (content_type , ' application/json' ):
76+ if utils .match_content_type (content_type , " application/json" ):
5977 out = utils .unmarshal_json (http_res .text , errors .HTTPValidationError )
6078 out .raw_response = http_res
6179 raise out
6280 else :
63- raise errors .SDKError (f'unknown content-type received: { content_type } ' , http_res .status_code , http_res .text , http_res )
64- elif http_res .status_code >= 400 and http_res .status_code < 500 or http_res .status_code >= 500 and http_res .status_code < 600 :
65- raise errors .SDKError ('API error occurred' , http_res .status_code , http_res .text , http_res )
81+ raise errors .SDKError (
82+ f"unknown content-type received: { content_type } " ,
83+ http_res .status_code ,
84+ http_res .text ,
85+ http_res ,
86+ )
87+ elif (
88+ http_res .status_code >= 400
89+ and http_res .status_code < 500
90+ or http_res .status_code >= 500
91+ and http_res .status_code < 600
92+ ):
93+ raise errors .SDKError (
94+ "API error occurred" , http_res .status_code , http_res .text , http_res
95+ )
6696
6797 return res
68-
69-
0 commit comments