Skip to content

Commit 8512688

Browse files
Merge branch 'master' into release
2 parents 9a894fd + 966adc5 commit 8512688

File tree

587 files changed

+3059
-2635
lines changed

Some content is hidden

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

587 files changed

+3059
-2635
lines changed

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,15 @@ Python Cloud SDK wraps Aspose.Words Cloud API so you could seamlessly integrate
1616
- [Convert a document to desired file format](https://docs.aspose.cloud/display/wordscloud/Convert+Document+to+Destination+Format+with+Detailed+Settings+and+Save+Result+to+Storage) along with detailed settings.
1717
- Convert an encrypted PDF document into Word document format.
1818

19+
## Enhancements in Version 22.10
20+
21+
- Added 'CacheHeaderFooterShapes' property for PdfSaveOptionsData class.
22+
- FileReference structure has been added that allows to determine how the document will be accessed: from the remote storage, or loaded directly in the request.
23+
- The 'AppendDocument' and 'AppendDocumentOnline' methods takes a 'FileReference' instead of an 'href' property.
24+
- Added property 'StartingNumber' for 'PageNumbers' class.
25+
- Added property 'GlobalCultureName' for 'FieldOptions' class.
26+
27+
1928
## Enhancements in Version 22.9
2029

2130
- CompressDocument method now can handle images.

asposewordscloud/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010
from asposewordscloud.api_client import ApiClient
1111
from asposewordscloud.configuration import Configuration
1212
# import models into sdk package
13+
from asposewordscloud.models.file_reference import FileReference
1314
from asposewordscloud.models.api_error import ApiError
1415
from asposewordscloud.models.available_fonts_response import AvailableFontsResponse
15-
from asposewordscloud.models.base_entry import BaseEntry
1616
from asposewordscloud.models.bmp_save_options_data import BmpSaveOptionsData
1717
from asposewordscloud.models.bookmark import Bookmark
1818
from asposewordscloud.models.bookmark_data import BookmarkData

asposewordscloud/api_client.py

Lines changed: 44 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -83,12 +83,12 @@ def __init__(self, configuration=None, header_name=None, header_value=None,
8383

8484
self.pool = None
8585
self.rest_client = rest.RESTClientObject(configuration)
86-
self.default_headers = {'x-aspose-client': 'python sdk', 'x-aspose-version': '22.9'}
86+
self.default_headers = {'x-aspose-client': 'python sdk', 'x-aspose-version': '22.10'}
8787
if header_name is not None:
8888
self.default_headers[header_name] = header_value
8989
self.cookie = cookie
9090
# Set default User-Agent.
91-
self.user_agent = 'python sdk 22.9'
91+
self.user_agent = 'python sdk 22.10'
9292

9393
def __del__(self):
9494
if not self.pool is None:
@@ -111,9 +111,7 @@ def set_default_header(self, header_name, header_value):
111111
def request_token(self):
112112
config = self.configuration
113113
request_url = "/connect/token"
114-
form_params = [['grant_type', 'client_credentials', 'string'],
115-
['client_id', config.client_secret['client_id'], 'string'],
116-
['client_secret', config.client_secret['client_secret'], 'string']]
114+
body = 'grant_type=client_credentials&client_id=' + config.client_secret['client_id'] + '&client_secret=' + config.client_secret['client_secret']
117115

118116
header_params = {'Accept': 'application/json', 'Content-Type': 'application/x-www-form-urlencoded'}
119117

@@ -127,13 +125,6 @@ def request_token(self):
127125
# remove optional path parameters
128126
resource_path = request_url.replace('//', '/')
129127

130-
# post parameters
131-
if form_params:
132-
form_params = self.prepare_post_parameters(form_params)
133-
form_params = self.sanitize_for_serialization(form_params)
134-
form_params = self.parameters_to_tuples(form_params,
135-
{})
136-
137128
# request url
138129
url = ''
139130
if six.PY3:
@@ -144,7 +135,7 @@ def request_token(self):
144135
# perform request and return response
145136
response_data = self.request(
146137
'POST', url, query_params=[], headers=header_params,
147-
post_params=form_params, body=None,
138+
post_params=None, body=body,
148139
_preload_content=True,
149140
_request_timeout=None)
150141

@@ -181,9 +172,16 @@ def __call_api(
181172

182173
# post parameters
183174
if post_params:
184-
post_params = self.prepare_post_parameters(post_params)
185-
post_params = self.sanitize_for_serialization(post_params)
186-
post_params = self.parameters_to_tuples(post_params, collection_formats)
175+
if len(post_params) == 1:
176+
post_params = self.prepare_post_parameters(post_params)
177+
body = post_params[0][1][1]
178+
header_params['Content-Type'] = post_params[0][1][2]
179+
post_params = None
180+
elif len(post_params) > 1:
181+
post_params = self.prepare_post_parameters(post_params)
182+
post_params = self.sanitize_for_serialization(post_params)
183+
post_params = self.parameters_to_tuples(post_params, collection_formats)
184+
header_params['Content-Type'] = 'multipart/form-data'
187185

188186
# auth setting
189187
self.update_params_for_auth(header_params, query_params, auth_settings)
@@ -321,7 +319,7 @@ def deserialize_multipart(self, without_intermediate_results, multipart, request
321319

322320
result = None
323321
if code == 200:
324-
if response_type is not 'None':
322+
if response_type != 'None':
325323
result = self.deserialize(body, headers, response_type)
326324
else:
327325
result = rest.ApiException(status=code, reason=body.decode('UTF-8'))
@@ -392,6 +390,9 @@ def __deserialize(self, data, klass):
392390
return None
393391

394392
if type(klass) == str:
393+
if klass == 'None':
394+
return None
395+
395396
if klass.startswith('list['):
396397
sub_kls = re.match(r'list\[(.*)\]', klass).group(1)
397398
return [self.__deserialize(sub_data, sub_kls)
@@ -481,62 +482,13 @@ def request(self, method, url, query_params=None, headers=None,
481482
post_params=None, body=None, _preload_content=True,
482483
_request_timeout=None):
483484
"""Makes the HTTP request using RESTClient."""
484-
if method == "GET":
485-
return self.rest_client.GET(url,
486-
query_params=query_params,
487-
_preload_content=_preload_content,
488-
_request_timeout=_request_timeout,
489-
headers=headers)
490-
elif method == "HEAD":
491-
return self.rest_client.HEAD(url,
492-
query_params=query_params,
493-
_preload_content=_preload_content,
494-
_request_timeout=_request_timeout,
495-
headers=headers)
496-
elif method == "OPTIONS":
497-
return self.rest_client.OPTIONS(url,
498-
query_params=query_params,
499-
headers=headers,
500-
post_params=post_params,
501-
_preload_content=_preload_content,
502-
_request_timeout=_request_timeout,
503-
body=body)
504-
elif method == "POST":
505-
return self.rest_client.POST(url,
506-
query_params=query_params,
507-
headers=headers,
508-
post_params=post_params,
509-
_preload_content=_preload_content,
510-
_request_timeout=_request_timeout,
511-
body=body)
512-
elif method == "PUT":
513-
return self.rest_client.PUT(url,
514-
query_params=query_params,
515-
headers=headers,
516-
post_params=post_params,
517-
_preload_content=_preload_content,
518-
_request_timeout=_request_timeout,
519-
body=body)
520-
elif method == "PATCH":
521-
return self.rest_client.PATCH(url,
522-
query_params=query_params,
523-
headers=headers,
524-
post_params=post_params,
525-
_preload_content=_preload_content,
526-
_request_timeout=_request_timeout,
527-
body=body)
528-
elif method == "DELETE":
529-
return self.rest_client.DELETE(url,
530-
query_params=query_params,
531-
headers=headers,
532-
_preload_content=_preload_content,
533-
_request_timeout=_request_timeout,
534-
body=body)
535-
else:
536-
raise ValueError(
537-
"http method must be `GET`, `HEAD`, `OPTIONS`,"
538-
" `POST`, `PATCH`, `PUT` or `DELETE`."
539-
)
485+
return self.rest_client.request(method, url,
486+
headers=headers,
487+
query_params=query_params,
488+
post_params=post_params,
489+
_preload_content=_preload_content,
490+
_request_timeout=_request_timeout,
491+
body=body)
540492

541493
def parameters_to_tuples(self, params, collection_formats):
542494
"""Get parameters as list of tuples, formatting collections.
@@ -583,7 +535,10 @@ def prepare_post_parameters(self, post_params=None):
583535
params.append(tuple([k, tuple([None, v, 'application/http; msgtype=request'])]))
584536

585537
if t == 'string':
586-
params.append(tuple([k, v]))
538+
params.append(tuple([k, tuple([None, v, 'text/plain'])]))
539+
540+
if t == 'json':
541+
params.append(tuple([k, tuple([None, v.to_json(), 'application/json'])]))
587542

588543
if t == 'file':
589544
if not v:
@@ -764,18 +719,23 @@ def request_to_batch_part(self, request, encryptor):
764719
if http_request['query_params']:
765720
url += '?' + urlencode(http_request['query_params'])
766721

767-
body = None
722+
body = http_request['body']
768723
if http_request['form_params']:
769724
post_params = self.prepare_post_parameters(http_request['form_params'])
770-
post_params = self.sanitize_for_serialization(post_params)
771-
post_params = self.parameters_to_tuples(post_params, http_request['collection_formats'])
772-
body, content_type = encode_multipart_formdata(post_params)
773-
http_request['header_params']['Content-Type'] = content_type
774-
775-
if http_request['body']:
776-
body = self.sanitize_for_serialization(http_request['body'])
777-
if type(body) != str:
778-
body = json.dumps(body).encode('UTF-8')
725+
if len(post_params) == 1:
726+
body = post_params[0][1][1]
727+
http_request['header_params']['Content-Type'] = post_params[0][1][2]
728+
http_request['form_params'] = {}
729+
elif len(post_params) > 1:
730+
post_params = self.sanitize_for_serialization(post_params)
731+
post_params = self.parameters_to_tuples(post_params, http_request['collection_formats'])
732+
body, content_type = encode_multipart_formdata(post_params)
733+
http_request['header_params']['Content-Type'] = content_type
734+
735+
if body:
736+
body = self.sanitize_for_serialization(body)
737+
if isinstance(body, str):
738+
body = body.encode('UTF-8')
779739

780740
result = bytearray()
781741
result.extend(http_request['method'].encode('UTF-8'))

0 commit comments

Comments
 (0)