aspose_slides_cloud 23.9.0 → 23.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -7
- data/README.md +4 -0
- data/aspose_slides_cloud.gemspec +0 -1
- data/docker-entrypoint.sh +1 -0
- data/lib/aspose_slides_cloud/api/slides_async_api.rb +273 -0
- data/lib/aspose_slides_cloud/api_client.rb +2 -1
- data/lib/aspose_slides_cloud/models/operation.rb +209 -0
- data/lib/aspose_slides_cloud/type_registry.rb +1 -0
- data/lib/aspose_slides_cloud/version.rb +1 -1
- data/lib/aspose_slides_cloud.rb +2 -0
- data/spec/api/slides_api_spec.rb +2016 -2016
- data/spec/api/slides_async_api_spec.rb +554 -0
- data/spec/spec_utils.rb +38 -7
- data/spec/use_cases/abstract_class_spec.rb +1 -1
- data/spec/use_cases/animation_spec.rb +28 -28
- data/spec/use_cases/async_api_spec.rb +82 -0
- data/spec/use_cases/chart_spec.rb +51 -51
- data/spec/use_cases/comment_spec.rb +17 -17
- data/spec/use_cases/create_spec.rb +22 -22
- data/spec/use_cases/font_spec.rb +24 -24
- data/spec/use_cases/header_footer_spec.rb +9 -9
- data/spec/use_cases/hyperlink_spec.rb +10 -10
- data/spec/use_cases/image_spec.rb +16 -16
- data/spec/use_cases/layout_slide_spec.rb +41 -41
- data/spec/use_cases/master_slide_spec.rb +40 -40
- data/spec/use_cases/math_spec.rb +15 -15
- data/spec/use_cases/merge_spec.rb +15 -15
- data/spec/use_cases/notes_slide_spec.rb +39 -39
- data/spec/use_cases/nullable_field_spec.rb +7 -7
- data/spec/use_cases/paragraph_spec.rb +38 -38
- data/spec/use_cases/pipeline_spec.rb +1 -1
- data/spec/use_cases/portion_spec.rb +34 -34
- data/spec/use_cases/property_spec.rb +38 -38
- data/spec/use_cases/section_spec.rb +16 -16
- data/spec/use_cases/shape_format_spec.rb +12 -12
- data/spec/use_cases/shape_spec.rb +87 -87
- data/spec/use_cases/slide_spec.rb +32 -32
- data/spec/use_cases/split_spec.rb +12 -12
- data/spec/use_cases/table_spec.rb +38 -38
- data/spec/use_cases/text_format_spec.rb +4 -4
- data/spec/use_cases/text_spec.rb +28 -28
- data/spec/use_cases/vba_spec.rb +10 -10
- data/spec/use_cases/watermark_spec.rb +36 -36
- data/testConfig.json +2 -1
- data/testRules.json +7 -0
- metadata +8 -24
- data/spec/use_cases/convert_spec.rb +0 -199
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 34682ffe3b102493761aff274ea1d1a4fa66dab39a1580ec5c8cdd2ebdd5f960
|
4
|
+
data.tar.gz: f9e5f28e25486125947e76b25f369b3cf431fec9b56bd47a0b88c1db730add11
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 47d210a979348472740898a3eddfffbe932687faefb42e800df63f01e1d39ecbd98386bba50f49843d7d1d40bd7b33d1c0dee1ac37dd1e252149df894b04927c
|
7
|
+
data.tar.gz: 49d6e58274292a16342479c98750a729ce0d90c10b3a3a03ed73c3eaf739708ad94d77b6065e08775232d177d9c37ed5a0ec5718423dc51d4af2c96c33242a09
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
aspose_slides_cloud (23.
|
4
|
+
aspose_slides_cloud (23.10.0)
|
5
5
|
faraday (~> 1.0, >= 1.0.0)
|
6
6
|
faraday-httpclient (~> 1.0, >= 1.0.0)
|
7
7
|
httpclient (~> 2.2, >= 2.2.0)
|
@@ -15,8 +15,6 @@ GEM
|
|
15
15
|
public_suffix (>= 2.0.2, < 6.0)
|
16
16
|
autotest (4.4.6)
|
17
17
|
ZenTest (>= 4.4.1)
|
18
|
-
autotest-fsevent (0.2.20)
|
19
|
-
sys-uname
|
20
18
|
autotest-growl (0.2.16)
|
21
19
|
autotest-rails-pure (4.1.2)
|
22
20
|
crack (0.4.5)
|
@@ -45,7 +43,6 @@ GEM
|
|
45
43
|
faraday-patron (1.0.0)
|
46
44
|
faraday-rack (1.0.0)
|
47
45
|
faraday-retry (1.0.3)
|
48
|
-
ffi (1.16.2)
|
49
46
|
hashdiff (1.0.1)
|
50
47
|
httpclient (2.8.3)
|
51
48
|
json (2.6.3)
|
@@ -70,8 +67,6 @@ GEM
|
|
70
67
|
rspec-core (>= 2, < 4, != 2.12.0)
|
71
68
|
ruby2_keywords (0.0.5)
|
72
69
|
rubyzip (2.3.2)
|
73
|
-
sys-uname (1.2.3)
|
74
|
-
ffi (~> 1.1)
|
75
70
|
vcr (3.0.3)
|
76
71
|
webmock (1.24.6)
|
77
72
|
addressable (>= 2.3.6)
|
@@ -84,7 +79,6 @@ PLATFORMS
|
|
84
79
|
DEPENDENCIES
|
85
80
|
aspose_slides_cloud!
|
86
81
|
autotest (~> 4.4, >= 4.4.6)
|
87
|
-
autotest-fsevent (~> 0.2, >= 0.2.12)
|
88
82
|
autotest-growl (~> 0.2, >= 0.2.16)
|
89
83
|
autotest-rails-pure (~> 4.1, >= 4.1.2)
|
90
84
|
rake (~> 12.3.3)
|
data/README.md
CHANGED
@@ -27,6 +27,10 @@ You may want to check out Aspose free [Powerpoint to PDF](https://products.aspos
|
|
27
27
|
**Web:** HTML/HTML5
|
28
28
|
**Other:** MPEG4, SWF (export whole presentations)
|
29
29
|
|
30
|
+
## Enhancements in Version 23.10
|
31
|
+
|
32
|
+
* Added asynchronous API - **SlidesAsyncApi** class with **StartConvert**, **StartDownloadPresentation**, **GetOperationStatus**, **GetOperationResult** methods that allow tracking progress of conversion operations.
|
33
|
+
|
30
34
|
## Enhancements in Version 23.9
|
31
35
|
|
32
36
|
* Added **ReplaceImage** and **ReplaceImageOnline** methods that enable replacing images in a presentation.
|
data/aspose_slides_cloud.gemspec
CHANGED
@@ -49,7 +49,6 @@ Gem::Specification.new do |s|
|
|
49
49
|
s.add_development_dependency 'autotest', '~> 4.4', '>= 4.4.6'
|
50
50
|
s.add_development_dependency 'autotest-rails-pure', '~> 4.1', '>= 4.1.2'
|
51
51
|
s.add_development_dependency 'autotest-growl', '~> 0.2', '>= 0.2.16'
|
52
|
-
s.add_development_dependency 'autotest-fsevent', '~> 0.2', '>= 0.2.12'
|
53
52
|
s.add_development_dependency 'rubyzip', '~> 2.3', '>= 2.3.0'
|
54
53
|
s.files = `find *`.split("\n").uniq.sort.select { |f| !f.empty? }
|
55
54
|
s.test_files = `find spec/*`.split("\n").uniq.sort.select { |f| !f.empty? && f.start_with?("spec") }
|
data/docker-entrypoint.sh
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
sed -i 's~@your_client_id@~'"${CLIENT_ID}"'~g' testConfig.json
|
4
4
|
sed -i 's~@your_client_secret@~'"${CLIENT_SECRET}"'~g' testConfig.json
|
5
5
|
sed -i 's~@base_url@~'"${BASE_URL}"'~g' testConfig.json
|
6
|
+
sed -i 's~@async_base_url@~'"${BASE_ASYNC_URL}"'~g' testConfig.json
|
6
7
|
sed -i 's~@base_auth_url@~'"${BASE_AUTH_URL}"'~g' testConfig.json
|
7
8
|
|
8
9
|
mkdir testResults
|
@@ -0,0 +1,273 @@
|
|
1
|
+
=begin
|
2
|
+
Copyright (c) 2019 Aspose Pty Ltd
|
3
|
+
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
6
|
+
in the Software without restriction, including without limitation the rights
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
9
|
+
furnished to do so, subject to the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
12
|
+
copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
20
|
+
SOFTWARE.
|
21
|
+
=end
|
22
|
+
|
23
|
+
require 'uri'
|
24
|
+
|
25
|
+
module AsposeSlidesCloud
|
26
|
+
class SlidesAsyncApi
|
27
|
+
attr_accessor :api_client
|
28
|
+
|
29
|
+
def initialize(configuration = Configuration.default)
|
30
|
+
@api_client = AsposeSlidesCloud::ApiClient.new(configuration)
|
31
|
+
end
|
32
|
+
|
33
|
+
# @param id
|
34
|
+
def get_operation_result(id)
|
35
|
+
data, _status_code, _headers = get_operation_result_with_http_info(id)
|
36
|
+
data
|
37
|
+
end
|
38
|
+
|
39
|
+
# @param id
|
40
|
+
def get_operation_result_with_http_info(id)
|
41
|
+
if @api_client.config.debugging
|
42
|
+
@api_client.config.logger.debug 'Calling API: SlidesAsyncApi.get_operation_result ...'
|
43
|
+
end
|
44
|
+
|
45
|
+
# verify the required parameter 'id' is set
|
46
|
+
if @api_client.config.client_side_validation && id.nil?
|
47
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling SlidesAsyncApi.get_operation_result"
|
48
|
+
end
|
49
|
+
# resource path
|
50
|
+
local_var_path = '/slides/async/{id}/result'
|
51
|
+
local_var_path = @api_client.replace_path_parameter(local_var_path, 'id', id)
|
52
|
+
|
53
|
+
# query parameters
|
54
|
+
query_params = {}
|
55
|
+
|
56
|
+
# header parameters
|
57
|
+
header_params = {}
|
58
|
+
# HTTP header 'Accept' (if needed)
|
59
|
+
header_params['Accept'] = @api_client.select_header_accept(['multipart/form-data'])
|
60
|
+
# HTTP header 'Content-Type'
|
61
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
62
|
+
|
63
|
+
# http body (model)
|
64
|
+
post_body = nil
|
65
|
+
|
66
|
+
# form parameters
|
67
|
+
post_files = []
|
68
|
+
|
69
|
+
auth_names = ['JWT']
|
70
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
71
|
+
:header_params => header_params,
|
72
|
+
:query_params => query_params,
|
73
|
+
:body => post_body,
|
74
|
+
:files => post_files,
|
75
|
+
:auth_names => auth_names,
|
76
|
+
:return_type => 'File')
|
77
|
+
return data, status_code, headers
|
78
|
+
end
|
79
|
+
# @param id
|
80
|
+
def get_operation_status(id)
|
81
|
+
data, _status_code, _headers = get_operation_status_with_http_info(id)
|
82
|
+
data
|
83
|
+
end
|
84
|
+
|
85
|
+
# @param id
|
86
|
+
def get_operation_status_with_http_info(id)
|
87
|
+
if @api_client.config.debugging
|
88
|
+
@api_client.config.logger.debug 'Calling API: SlidesAsyncApi.get_operation_status ...'
|
89
|
+
end
|
90
|
+
|
91
|
+
# verify the required parameter 'id' is set
|
92
|
+
if @api_client.config.client_side_validation && id.nil?
|
93
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling SlidesAsyncApi.get_operation_status"
|
94
|
+
end
|
95
|
+
# resource path
|
96
|
+
local_var_path = '/slides/async/{id}'
|
97
|
+
local_var_path = @api_client.replace_path_parameter(local_var_path, 'id', id)
|
98
|
+
|
99
|
+
# query parameters
|
100
|
+
query_params = {}
|
101
|
+
|
102
|
+
# header parameters
|
103
|
+
header_params = {}
|
104
|
+
# HTTP header 'Accept' (if needed)
|
105
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
106
|
+
# HTTP header 'Content-Type'
|
107
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
108
|
+
|
109
|
+
# http body (model)
|
110
|
+
post_body = nil
|
111
|
+
|
112
|
+
# form parameters
|
113
|
+
post_files = []
|
114
|
+
|
115
|
+
auth_names = ['JWT']
|
116
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path,
|
117
|
+
:header_params => header_params,
|
118
|
+
:query_params => query_params,
|
119
|
+
:body => post_body,
|
120
|
+
:files => post_files,
|
121
|
+
:auth_names => auth_names,
|
122
|
+
:return_type => 'Operation')
|
123
|
+
return data, status_code, headers
|
124
|
+
end
|
125
|
+
# @param document Document data.
|
126
|
+
# @param format
|
127
|
+
# @param password
|
128
|
+
# @param storage
|
129
|
+
# @param fonts_folder
|
130
|
+
# @param slides
|
131
|
+
# @param options
|
132
|
+
def start_convert(document, format, password = nil, storage = nil, fonts_folder = nil, slides = nil, options = nil)
|
133
|
+
data, _status_code, _headers = start_convert_with_http_info(document, format, password, storage, fonts_folder, slides, options)
|
134
|
+
data
|
135
|
+
end
|
136
|
+
|
137
|
+
# @param document Document data.
|
138
|
+
# @param format
|
139
|
+
# @param password
|
140
|
+
# @param storage
|
141
|
+
# @param fonts_folder
|
142
|
+
# @param slides
|
143
|
+
# @param options
|
144
|
+
def start_convert_with_http_info(document, format, password = nil, storage = nil, fonts_folder = nil, slides = nil, options = nil)
|
145
|
+
if @api_client.config.debugging
|
146
|
+
@api_client.config.logger.debug 'Calling API: SlidesAsyncApi.start_convert ...'
|
147
|
+
end
|
148
|
+
|
149
|
+
# verify the required parameter 'document' is set
|
150
|
+
if @api_client.config.client_side_validation && document.nil?
|
151
|
+
fail ArgumentError, "Missing the required parameter 'document' when calling SlidesAsyncApi.start_convert"
|
152
|
+
end
|
153
|
+
# verify the required parameter 'format' is set
|
154
|
+
if @api_client.config.client_side_validation && format.nil?
|
155
|
+
fail ArgumentError, "Missing the required parameter 'format' when calling SlidesAsyncApi.start_convert"
|
156
|
+
end
|
157
|
+
# verify enum value
|
158
|
+
if @api_client.config.client_side_validation && !['Pdf', 'Xps', 'Tiff', 'Pptx', 'Odp', 'Otp', 'Ppt', 'Pps', 'Ppsx', 'Pptm', 'Ppsm', 'Pot', 'Potx', 'Potm', 'Html', 'Html5', 'Swf', 'Svg', 'Jpeg', 'Png', 'Gif', 'Bmp', 'Fodp', 'Xaml', 'Mpeg4'].any?{ |s| s.casecmp(format)==0 }
|
159
|
+
fail ArgumentError, "Invalid value for parameter format: " + format + ". Must be one of Pdf, Xps, Tiff, Pptx, Odp, Otp, Ppt, Pps, Ppsx, Pptm, Ppsm, Pot, Potx, Potm, Html, Html5, Swf, Svg, Jpeg, Png, Gif, Bmp, Fodp, Xaml, Mpeg4"
|
160
|
+
end
|
161
|
+
# resource path
|
162
|
+
local_var_path = '/slides/async/convert/{format}'
|
163
|
+
local_var_path = @api_client.replace_path_parameter(local_var_path, 'format', format)
|
164
|
+
|
165
|
+
# query parameters
|
166
|
+
query_params = {}
|
167
|
+
query_params[:'storage'] = @api_client.prepare_for_query(storage) unless storage.nil?
|
168
|
+
query_params[:'fontsFolder'] = @api_client.prepare_for_query(fonts_folder) unless fonts_folder.nil?
|
169
|
+
query_params[:'slides'] = @api_client.prepare_for_query(slides) unless slides.nil?
|
170
|
+
|
171
|
+
# header parameters
|
172
|
+
header_params = {}
|
173
|
+
# HTTP header 'Accept' (if needed)
|
174
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
175
|
+
# HTTP header 'Content-Type'
|
176
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['multipart/form-data'])
|
177
|
+
header_params[:'password'] = password unless password.nil?
|
178
|
+
|
179
|
+
# http body (model)
|
180
|
+
post_body = @api_client.object_to_http_body(options)
|
181
|
+
|
182
|
+
# form parameters
|
183
|
+
post_files = []
|
184
|
+
if document
|
185
|
+
post_files = post_files.push(document)
|
186
|
+
end
|
187
|
+
|
188
|
+
auth_names = ['JWT']
|
189
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path,
|
190
|
+
:header_params => header_params,
|
191
|
+
:query_params => query_params,
|
192
|
+
:body => post_body,
|
193
|
+
:files => post_files,
|
194
|
+
:auth_names => auth_names,
|
195
|
+
:return_type => 'String')
|
196
|
+
return data, status_code, headers
|
197
|
+
end
|
198
|
+
# @param name
|
199
|
+
# @param format
|
200
|
+
# @param options
|
201
|
+
# @param password
|
202
|
+
# @param folder
|
203
|
+
# @param storage
|
204
|
+
# @param fonts_folder
|
205
|
+
# @param slides
|
206
|
+
def start_download_presentation(name, format, options = nil, password = nil, folder = nil, storage = nil, fonts_folder = nil, slides = nil)
|
207
|
+
data, _status_code, _headers = start_download_presentation_with_http_info(name, format, options, password, folder, storage, fonts_folder, slides)
|
208
|
+
data
|
209
|
+
end
|
210
|
+
|
211
|
+
# @param name
|
212
|
+
# @param format
|
213
|
+
# @param options
|
214
|
+
# @param password
|
215
|
+
# @param folder
|
216
|
+
# @param storage
|
217
|
+
# @param fonts_folder
|
218
|
+
# @param slides
|
219
|
+
def start_download_presentation_with_http_info(name, format, options = nil, password = nil, folder = nil, storage = nil, fonts_folder = nil, slides = nil)
|
220
|
+
if @api_client.config.debugging
|
221
|
+
@api_client.config.logger.debug 'Calling API: SlidesAsyncApi.start_download_presentation ...'
|
222
|
+
end
|
223
|
+
|
224
|
+
# verify the required parameter 'name' is set
|
225
|
+
if @api_client.config.client_side_validation && name.nil?
|
226
|
+
fail ArgumentError, "Missing the required parameter 'name' when calling SlidesAsyncApi.start_download_presentation"
|
227
|
+
end
|
228
|
+
# verify the required parameter 'format' is set
|
229
|
+
if @api_client.config.client_side_validation && format.nil?
|
230
|
+
fail ArgumentError, "Missing the required parameter 'format' when calling SlidesAsyncApi.start_download_presentation"
|
231
|
+
end
|
232
|
+
# verify enum value
|
233
|
+
if @api_client.config.client_side_validation && !['Pdf', 'Xps', 'Tiff', 'Pptx', 'Odp', 'Otp', 'Ppt', 'Pps', 'Ppsx', 'Pptm', 'Ppsm', 'Pot', 'Potx', 'Potm', 'Html', 'Html5', 'Swf', 'Svg', 'Jpeg', 'Png', 'Gif', 'Bmp', 'Fodp', 'Xaml', 'Mpeg4'].any?{ |s| s.casecmp(format)==0 }
|
234
|
+
fail ArgumentError, "Invalid value for parameter format: " + format + ". Must be one of Pdf, Xps, Tiff, Pptx, Odp, Otp, Ppt, Pps, Ppsx, Pptm, Ppsm, Pot, Potx, Potm, Html, Html5, Swf, Svg, Jpeg, Png, Gif, Bmp, Fodp, Xaml, Mpeg4"
|
235
|
+
end
|
236
|
+
# resource path
|
237
|
+
local_var_path = '/slides/async/{name}/{format}'
|
238
|
+
local_var_path = @api_client.replace_path_parameter(local_var_path, 'name', name)
|
239
|
+
local_var_path = @api_client.replace_path_parameter(local_var_path, 'format', format)
|
240
|
+
|
241
|
+
# query parameters
|
242
|
+
query_params = {}
|
243
|
+
query_params[:'folder'] = @api_client.prepare_for_query(folder) unless folder.nil?
|
244
|
+
query_params[:'storage'] = @api_client.prepare_for_query(storage) unless storage.nil?
|
245
|
+
query_params[:'fontsFolder'] = @api_client.prepare_for_query(fonts_folder) unless fonts_folder.nil?
|
246
|
+
query_params[:'slides'] = @api_client.prepare_for_query(slides) unless slides.nil?
|
247
|
+
|
248
|
+
# header parameters
|
249
|
+
header_params = {}
|
250
|
+
# HTTP header 'Accept' (if needed)
|
251
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
252
|
+
# HTTP header 'Content-Type'
|
253
|
+
header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
|
254
|
+
header_params[:'password'] = password unless password.nil?
|
255
|
+
|
256
|
+
# http body (model)
|
257
|
+
post_body = @api_client.object_to_http_body(options)
|
258
|
+
|
259
|
+
# form parameters
|
260
|
+
post_files = []
|
261
|
+
|
262
|
+
auth_names = ['JWT']
|
263
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path,
|
264
|
+
:header_params => header_params,
|
265
|
+
:query_params => query_params,
|
266
|
+
:body => post_body,
|
267
|
+
:files => post_files,
|
268
|
+
:auth_names => auth_names,
|
269
|
+
:return_type => 'String')
|
270
|
+
return data, status_code, headers
|
271
|
+
end
|
272
|
+
end
|
273
|
+
end
|
@@ -221,7 +221,8 @@ module AsposeSlidesCloud
|
|
221
221
|
return nil if body.nil? || body.empty?
|
222
222
|
|
223
223
|
# return response body directly for String return type
|
224
|
-
return body if return_type == 'String'
|
224
|
+
return body.delete_prefix('"').delete_suffix('"') if return_type == 'String'
|
225
|
+
return body if return_type == 'File'
|
225
226
|
|
226
227
|
# ensuring a default content type
|
227
228
|
content_type = response.headers['Content-Type'] || 'application/json'
|
@@ -0,0 +1,209 @@
|
|
1
|
+
=begin
|
2
|
+
Copyright (c) 2019 Aspose Pty Ltd
|
3
|
+
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
6
|
+
in the Software without restriction, including without limitation the rights
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
9
|
+
furnished to do so, subject to the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
12
|
+
copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
20
|
+
SOFTWARE.
|
21
|
+
=end
|
22
|
+
|
23
|
+
require 'date'
|
24
|
+
|
25
|
+
module AsposeSlidesCloud
|
26
|
+
class Operation < BaseObject
|
27
|
+
attr_accessor :id
|
28
|
+
|
29
|
+
attr_accessor :method
|
30
|
+
|
31
|
+
attr_accessor :status
|
32
|
+
|
33
|
+
attr_accessor :created
|
34
|
+
|
35
|
+
attr_accessor :enqueued
|
36
|
+
|
37
|
+
attr_accessor :started
|
38
|
+
|
39
|
+
attr_accessor :failed
|
40
|
+
|
41
|
+
attr_accessor :canceled
|
42
|
+
|
43
|
+
attr_accessor :finished
|
44
|
+
|
45
|
+
attr_accessor :error
|
46
|
+
|
47
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
48
|
+
def self.attribute_map
|
49
|
+
{
|
50
|
+
:'id' => :'Id',
|
51
|
+
:'method' => :'Method',
|
52
|
+
:'status' => :'Status',
|
53
|
+
:'created' => :'Created',
|
54
|
+
:'enqueued' => :'Enqueued',
|
55
|
+
:'started' => :'Started',
|
56
|
+
:'failed' => :'Failed',
|
57
|
+
:'canceled' => :'Canceled',
|
58
|
+
:'finished' => :'Finished',
|
59
|
+
:'error' => :'Error',
|
60
|
+
}
|
61
|
+
end
|
62
|
+
|
63
|
+
# Attribute type mapping.
|
64
|
+
def self.swagger_types
|
65
|
+
{
|
66
|
+
:'id' => :'String',
|
67
|
+
:'method' => :'String',
|
68
|
+
:'status' => :'String',
|
69
|
+
:'created' => :'DateTime',
|
70
|
+
:'enqueued' => :'DateTime',
|
71
|
+
:'started' => :'DateTime',
|
72
|
+
:'failed' => :'DateTime',
|
73
|
+
:'canceled' => :'DateTime',
|
74
|
+
:'finished' => :'DateTime',
|
75
|
+
:'error' => :'String',
|
76
|
+
}
|
77
|
+
end
|
78
|
+
|
79
|
+
# Initializes the object
|
80
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
81
|
+
def initialize(attributes = {})
|
82
|
+
return unless attributes.is_a?(Hash)
|
83
|
+
|
84
|
+
# convert string to symbol for hash key
|
85
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
86
|
+
|
87
|
+
if attributes.has_key?(:'Id')
|
88
|
+
self.id = attributes[:'Id']
|
89
|
+
end
|
90
|
+
|
91
|
+
if attributes.has_key?(:'Method')
|
92
|
+
self.method = attributes[:'Method']
|
93
|
+
end
|
94
|
+
|
95
|
+
if attributes.has_key?(:'Status')
|
96
|
+
self.status = attributes[:'Status']
|
97
|
+
end
|
98
|
+
|
99
|
+
if attributes.has_key?(:'Created')
|
100
|
+
self.created = attributes[:'Created']
|
101
|
+
end
|
102
|
+
|
103
|
+
if attributes.has_key?(:'Enqueued')
|
104
|
+
self.enqueued = attributes[:'Enqueued']
|
105
|
+
end
|
106
|
+
|
107
|
+
if attributes.has_key?(:'Started')
|
108
|
+
self.started = attributes[:'Started']
|
109
|
+
end
|
110
|
+
|
111
|
+
if attributes.has_key?(:'Failed')
|
112
|
+
self.failed = attributes[:'Failed']
|
113
|
+
end
|
114
|
+
|
115
|
+
if attributes.has_key?(:'Canceled')
|
116
|
+
self.canceled = attributes[:'Canceled']
|
117
|
+
end
|
118
|
+
|
119
|
+
if attributes.has_key?(:'Finished')
|
120
|
+
self.finished = attributes[:'Finished']
|
121
|
+
end
|
122
|
+
|
123
|
+
if attributes.has_key?(:'Error')
|
124
|
+
self.error = attributes[:'Error']
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
129
|
+
# @return Array for valid properties with the reasons
|
130
|
+
def list_invalid_properties
|
131
|
+
invalid_properties = Array.new
|
132
|
+
if @id.nil?
|
133
|
+
invalid_properties.push('invalid value for "id", id cannot be nil.')
|
134
|
+
end
|
135
|
+
|
136
|
+
if @method.nil?
|
137
|
+
invalid_properties.push('invalid value for "method", method cannot be nil.')
|
138
|
+
end
|
139
|
+
|
140
|
+
if @status.nil?
|
141
|
+
invalid_properties.push('invalid value for "status", status cannot be nil.')
|
142
|
+
end
|
143
|
+
|
144
|
+
invalid_properties
|
145
|
+
end
|
146
|
+
|
147
|
+
# Check to see if the all the properties in the model are valid
|
148
|
+
# @return true if the model is valid
|
149
|
+
def valid?
|
150
|
+
return false if @id.nil?
|
151
|
+
return false if @method.nil?
|
152
|
+
method_validator = EnumAttributeValidator.new('String', ['Convert', 'DownloadPresentation'])
|
153
|
+
return false unless method_validator.valid?(@method)
|
154
|
+
return false if @status.nil?
|
155
|
+
status_validator = EnumAttributeValidator.new('String', ['Created', 'Enqueued', 'Started', 'Failed', 'Canceled', 'Finished'])
|
156
|
+
return false unless status_validator.valid?(@status)
|
157
|
+
true
|
158
|
+
end
|
159
|
+
|
160
|
+
# Custom attribute writer method checking allowed values (enum).
|
161
|
+
# @param [Object] method Object to be assigned
|
162
|
+
def method=(method)
|
163
|
+
validator = EnumAttributeValidator.new('String', ['Convert', 'DownloadPresentation'])
|
164
|
+
unless validator.valid?(method)
|
165
|
+
fail ArgumentError, 'invalid value for "method", must be one of #{validator.allowable_values}.'
|
166
|
+
end
|
167
|
+
@method = method
|
168
|
+
end
|
169
|
+
|
170
|
+
# Custom attribute writer method checking allowed values (enum).
|
171
|
+
# @param [Object] status Object to be assigned
|
172
|
+
def status=(status)
|
173
|
+
validator = EnumAttributeValidator.new('String', ['Created', 'Enqueued', 'Started', 'Failed', 'Canceled', 'Finished'])
|
174
|
+
unless validator.valid?(status)
|
175
|
+
fail ArgumentError, 'invalid value for "status", must be one of #{validator.allowable_values}.'
|
176
|
+
end
|
177
|
+
@status = status
|
178
|
+
end
|
179
|
+
|
180
|
+
# Checks equality by comparing each attribute.
|
181
|
+
# @param [Object] Object to be compared
|
182
|
+
def ==(o)
|
183
|
+
return true if self.equal?(o)
|
184
|
+
self.class == o.class &&
|
185
|
+
id == o.id &&
|
186
|
+
method == o.method &&
|
187
|
+
status == o.status &&
|
188
|
+
created == o.created &&
|
189
|
+
enqueued == o.enqueued &&
|
190
|
+
started == o.started &&
|
191
|
+
failed == o.failed &&
|
192
|
+
canceled == o.canceled &&
|
193
|
+
finished == o.finished &&
|
194
|
+
error == o.error
|
195
|
+
end
|
196
|
+
|
197
|
+
# @see the `==` method
|
198
|
+
# @param [Object] Object to be compared
|
199
|
+
def eql?(o)
|
200
|
+
self == o
|
201
|
+
end
|
202
|
+
|
203
|
+
# Calculates hash code according to all attributes.
|
204
|
+
# @return [Fixnum] Hash code
|
205
|
+
def hash
|
206
|
+
[id, method, status, created, enqueued, started, failed, canceled, finished, error].hash
|
207
|
+
end
|
208
|
+
end
|
209
|
+
end
|
@@ -372,6 +372,7 @@ module AsposeSlidesCloud
|
|
372
372
|
:'OleObjectFrame' => { :'Type' => 'OleObjectFrame', },
|
373
373
|
:'OneValueChartDataPoint' => { :'Type' => 'OneValue', },
|
374
374
|
:'OneValueSeries' => { :'DataPointType' => 'OneValue', },
|
375
|
+
:'Operation' => { },
|
375
376
|
:'OrderedMergeRequest' => { },
|
376
377
|
:'OuterShadowEffect' => { },
|
377
378
|
:'OutputFile' => { },
|
data/lib/aspose_slides_cloud.rb
CHANGED
@@ -171,6 +171,7 @@ require 'aspose_slides_cloud/models/object_exist'
|
|
171
171
|
require 'aspose_slides_cloud/models/ole_object_frame'
|
172
172
|
require 'aspose_slides_cloud/models/one_value_chart_data_point'
|
173
173
|
require 'aspose_slides_cloud/models/one_value_series'
|
174
|
+
require 'aspose_slides_cloud/models/operation'
|
174
175
|
require 'aspose_slides_cloud/models/ordered_merge_request'
|
175
176
|
require 'aspose_slides_cloud/models/outer_shadow_effect'
|
176
177
|
require 'aspose_slides_cloud/models/output_file'
|
@@ -280,6 +281,7 @@ require 'aspose_slides_cloud/models/zoom_frame'
|
|
280
281
|
|
281
282
|
# APIs
|
282
283
|
require 'aspose_slides_cloud/api/slides_api'
|
284
|
+
require 'aspose_slides_cloud/api/slides_async_api'
|
283
285
|
|
284
286
|
module AsposeSlidesCloud
|
285
287
|
class << self
|