aspose_words_cloud 20.4.0 → 20.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/lib/aspose_words_cloud.rb +30 -0
  3. data/lib/aspose_words_cloud/api/words_api.rb +4292 -2201
  4. data/lib/aspose_words_cloud/api_client.rb +1 -0
  5. data/lib/aspose_words_cloud/models/bmp_save_options_data.rb +61 -4
  6. data/lib/aspose_words_cloud/models/csv_data_load_options.rb +237 -0
  7. data/lib/aspose_words_cloud/models/doc_save_options_data.rb +58 -1
  8. data/lib/aspose_words_cloud/models/emf_save_options_data.rb +61 -4
  9. data/lib/aspose_words_cloud/models/epub_save_options_data.rb +37 -1
  10. data/lib/aspose_words_cloud/models/fixed_page_save_options_data.rb +58 -1
  11. data/lib/aspose_words_cloud/models/gif_save_options_data.rb +61 -4
  12. data/lib/aspose_words_cloud/models/html_fixed_save_options_data.rb +71 -4
  13. data/lib/aspose_words_cloud/models/html_save_options_data.rb +37 -1
  14. data/lib/aspose_words_cloud/models/image_save_options_data.rb +58 -1
  15. data/lib/aspose_words_cloud/models/jpeg_save_options_data.rb +61 -4
  16. data/lib/aspose_words_cloud/models/list_format.rb +236 -0
  17. data/lib/aspose_words_cloud/models/list_format_update.rb +217 -0
  18. data/lib/aspose_words_cloud/models/list_info.rb +274 -0
  19. data/lib/aspose_words_cloud/models/list_insert.rb +244 -0
  20. data/lib/aspose_words_cloud/models/list_level.rb +393 -0
  21. data/lib/aspose_words_cloud/models/list_level_update.rb +366 -0
  22. data/lib/aspose_words_cloud/models/list_levels.rb +218 -0
  23. data/lib/aspose_words_cloud/models/list_response.rb +216 -0
  24. data/lib/aspose_words_cloud/models/list_update.rb +207 -0
  25. data/lib/aspose_words_cloud/models/lists.rb +218 -0
  26. data/lib/aspose_words_cloud/models/lists_response.rb +216 -0
  27. data/lib/aspose_words_cloud/models/mhtml_save_options_data.rb +37 -1
  28. data/lib/aspose_words_cloud/models/odt_save_options_data.rb +47 -1
  29. data/lib/aspose_words_cloud/models/ooxml_save_options_data.rb +58 -1
  30. data/lib/aspose_words_cloud/models/paragraph_format.rb +10 -1
  31. data/lib/aspose_words_cloud/models/paragraph_list_format_response.rb +216 -0
  32. data/lib/aspose_words_cloud/models/pcl_save_options_data.rb +58 -1
  33. data/lib/aspose_words_cloud/models/pdf_save_options_data.rb +47 -1
  34. data/lib/aspose_words_cloud/models/png_save_options_data.rb +61 -4
  35. data/lib/aspose_words_cloud/models/ps_save_options_data.rb +58 -1
  36. data/lib/aspose_words_cloud/models/report_build_options.rb +26 -0
  37. data/lib/aspose_words_cloud/models/report_engine_settings.rb +275 -0
  38. data/lib/aspose_words_cloud/models/requests/ApplyStyleToDocumentElementRequest.rb +81 -0
  39. data/lib/aspose_words_cloud/models/requests/BuildReportOnlineRequest.rb +57 -0
  40. data/lib/aspose_words_cloud/models/requests/BuildReportRequest.rb +73 -0
  41. data/lib/aspose_words_cloud/models/requests/CopyStyleRequest.rb +77 -0
  42. data/lib/aspose_words_cloud/models/requests/DeleteAllParagraphTabStopsRequest.rb +73 -0
  43. data/lib/aspose_words_cloud/models/requests/DeleteParagraphListFormatRequest.rb +81 -0
  44. data/lib/aspose_words_cloud/models/requests/DeleteParagraphTabStopRequest.rb +77 -0
  45. data/lib/aspose_words_cloud/models/requests/ExecuteMailMergeOnlineRequest.rb +2 -2
  46. data/lib/aspose_words_cloud/models/requests/ExecuteMailMergeRequest.rb +2 -2
  47. data/lib/aspose_words_cloud/models/requests/GetDocumentFieldNamesRequest.rb +2 -2
  48. data/lib/aspose_words_cloud/models/requests/GetListRequest.rb +65 -0
  49. data/lib/aspose_words_cloud/models/requests/GetListsRequest.rb +61 -0
  50. data/lib/aspose_words_cloud/models/requests/GetParagraphListFormatRequest.rb +69 -0
  51. data/lib/aspose_words_cloud/models/requests/GetParagraphListFormatWithoutNodePathRequest.rb +65 -0
  52. data/lib/aspose_words_cloud/models/requests/GetParagraphTabStopsRequest.rb +69 -0
  53. data/lib/aspose_words_cloud/models/requests/GetStyleFromDocumentElementRequest.rb +65 -0
  54. data/lib/aspose_words_cloud/models/requests/GetStyleRequest.rb +65 -0
  55. data/lib/aspose_words_cloud/models/requests/GetStylesRequest.rb +61 -0
  56. data/lib/aspose_words_cloud/models/requests/InsertListRequest.rb +77 -0
  57. data/lib/aspose_words_cloud/models/requests/InsertOrUpdateParagraphTabStopRequest.rb +77 -0
  58. data/lib/aspose_words_cloud/models/requests/InsertStyleRequest.rb +77 -0
  59. data/lib/aspose_words_cloud/models/requests/UpdateListLevelRequest.rb +85 -0
  60. data/lib/aspose_words_cloud/models/requests/UpdateListRequest.rb +81 -0
  61. data/lib/aspose_words_cloud/models/requests/UpdateParagraphListFormatRequest.rb +85 -0
  62. data/lib/aspose_words_cloud/models/requests/UpdateStyleRequest.rb +81 -0
  63. data/lib/aspose_words_cloud/models/rtf_save_options_data.rb +58 -1
  64. data/lib/aspose_words_cloud/models/save_options_data.rb +61 -4
  65. data/lib/aspose_words_cloud/models/shading.rb +262 -0
  66. data/lib/aspose_words_cloud/models/style.rb +370 -0
  67. data/lib/aspose_words_cloud/models/style_apply.rb +207 -0
  68. data/lib/aspose_words_cloud/models/style_copy.rb +207 -0
  69. data/lib/aspose_words_cloud/models/style_insert.rb +254 -0
  70. data/lib/aspose_words_cloud/models/style_response.rb +216 -0
  71. data/lib/aspose_words_cloud/models/style_update.rb +237 -0
  72. data/lib/aspose_words_cloud/models/styles.rb +218 -0
  73. data/lib/aspose_words_cloud/models/styles_response.rb +216 -0
  74. data/lib/aspose_words_cloud/models/svg_save_options_data.rb +58 -1
  75. data/lib/aspose_words_cloud/models/tab_stop.rb +290 -0
  76. data/lib/aspose_words_cloud/models/tab_stop_base.rb +280 -0
  77. data/lib/aspose_words_cloud/models/tab_stop_insert.rb +280 -0
  78. data/lib/aspose_words_cloud/models/tab_stops_response.rb +219 -0
  79. data/lib/aspose_words_cloud/models/text_save_options_data.rb +37 -1
  80. data/lib/aspose_words_cloud/models/tiff_save_options_data.rb +58 -1
  81. data/lib/aspose_words_cloud/models/word_ml_save_options_data.rb +58 -1
  82. data/lib/aspose_words_cloud/models/xaml_fixed_save_options_data.rb +58 -1
  83. data/lib/aspose_words_cloud/models/xaml_flow_save_options_data.rb +58 -1
  84. data/lib/aspose_words_cloud/models/xps_save_options_data.rb +58 -1
  85. data/lib/aspose_words_cloud/version.rb +1 -1
  86. metadata +52 -2
@@ -284,6 +284,7 @@ module AsposeWordsCloud
284
284
  def build_request_url(path)
285
285
  # remove empty path parameter artifacts
286
286
  path = path.gsub(/\/+/, '/')
287
+ path = path.gsub(" ", "%20")
287
288
  return @config.getFullUrl(path, path == "/connect/token")
288
289
  end
289
290
 
@@ -113,6 +113,33 @@ module AsposeWordsCloud
113
113
  # Gets or sets a value determining if fields should be updated before saving the document to a fixed page format. Default value for this property is. true
114
114
  attr_accessor :update_fields
115
115
 
116
+ # Gets or sets a value determining how 3D effects are rendered.
117
+ attr_accessor :dml3_d_effects_rendering_mode
118
+
119
+ # Gets or sets a value determining whether the Aspose.Words.Properties.BuiltInDocumentProperties.LastPrinted property is updated before saving.
120
+ attr_accessor :update_last_printed_property
121
+
122
+ class EnumAttributeValidator
123
+ attr_reader :datatype
124
+ attr_reader :allowable_values
125
+
126
+ def initialize(datatype, allowable_values)
127
+ @allowable_values = allowable_values.map do |value|
128
+ case datatype.to_s
129
+ when /Integer/i
130
+ value.to_i
131
+ when /Float/i
132
+ value.to_f
133
+ else
134
+ value
135
+ end
136
+ end
137
+ end
138
+
139
+ def valid?(value)
140
+ !value || allowable_values.include?(value)
141
+ end
142
+ end
116
143
 
117
144
  # Attribute mapping from ruby-style variable name to JSON key.
118
145
  def self.attribute_map
@@ -144,7 +171,9 @@ module AsposeWordsCloud
144
171
  :'zip_output' => :'ZipOutput',
145
172
  :'update_last_saved_time_property' => :'UpdateLastSavedTimeProperty',
146
173
  :'update_sdt_content' => :'UpdateSdtContent',
147
- :'update_fields' => :'UpdateFields'
174
+ :'update_fields' => :'UpdateFields',
175
+ :'dml3_d_effects_rendering_mode' => :'Dml3DEffectsRenderingMode',
176
+ :'update_last_printed_property' => :'UpdateLastPrintedProperty'
148
177
  }
149
178
  end
150
179
 
@@ -178,7 +207,9 @@ module AsposeWordsCloud
178
207
  :'zip_output' => :'BOOLEAN',
179
208
  :'update_last_saved_time_property' => :'BOOLEAN',
180
209
  :'update_sdt_content' => :'BOOLEAN',
181
- :'update_fields' => :'BOOLEAN'
210
+ :'update_fields' => :'BOOLEAN',
211
+ :'dml3_d_effects_rendering_mode' => :'String',
212
+ :'update_last_printed_property' => :'BOOLEAN'
182
213
  }
183
214
  end
184
215
 
@@ -302,6 +333,14 @@ module AsposeWordsCloud
302
333
  self.update_fields = attributes[:'UpdateFields']
303
334
  end
304
335
 
336
+ if attributes.key?(:'Dml3DEffectsRenderingMode')
337
+ self.dml3_d_effects_rendering_mode = attributes[:'Dml3DEffectsRenderingMode']
338
+ end
339
+
340
+ if attributes.key?(:'UpdateLastPrintedProperty')
341
+ self.update_last_printed_property = attributes[:'UpdateLastPrintedProperty']
342
+ end
343
+
305
344
  end
306
345
 
307
346
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -314,9 +353,25 @@ module AsposeWordsCloud
314
353
  # Check to see if the all the properties in the model are valid
315
354
  # @return true if the model is valid
316
355
  def valid?
356
+ dml3_d_effects_rendering_mode_validator = EnumAttributeValidator.new('String', ["Basic", "Advanced"])
357
+ return false unless dml3_d_effects_rendering_mode_validator.valid?(@dml3_d_effects_rendering_mode)
317
358
  return true
318
359
  end
319
360
 
361
+ # Custom attribute writer method checking allowed values (enum).
362
+ # @param [Object] dml3_d_effects_rendering_mode Object to be assigned
363
+ def dml3_d_effects_rendering_mode=(dml3_d_effects_rendering_mode)
364
+ validator = EnumAttributeValidator.new('String', ["Basic", "Advanced"])
365
+ if dml3_d_effects_rendering_mode.to_i == 0
366
+ unless validator.valid?(dml3_d_effects_rendering_mode)
367
+ raise ArgumentError, "invalid value for 'dml3_d_effects_rendering_mode', must be one of #{validator.allowable_values}."
368
+ end
369
+ @dml3_d_effects_rendering_mode = dml3_d_effects_rendering_mode
370
+ else
371
+ @dml3_d_effects_rendering_mode = validator.allowable_values[dml3_d_effects_rendering_mode.to_i]
372
+ end
373
+ end
374
+
320
375
  # Checks equality by comparing each attribute.
321
376
  # @param [Object] Object to be compared
322
377
  def ==(other)
@@ -349,7 +404,9 @@ module AsposeWordsCloud
349
404
  zip_output == other.zip_output &&
350
405
  update_last_saved_time_property == other.update_last_saved_time_property &&
351
406
  update_sdt_content == other.update_sdt_content &&
352
- update_fields == other.update_fields
407
+ update_fields == other.update_fields &&
408
+ dml3_d_effects_rendering_mode == other.dml3_d_effects_rendering_mode &&
409
+ update_last_printed_property == other.update_last_printed_property
353
410
  end
354
411
 
355
412
  # @see the `==` method
@@ -361,7 +418,7 @@ module AsposeWordsCloud
361
418
  # Calculates hash code according to all attributes.
362
419
  # @return [Fixnum] Hash code
363
420
  def hash
364
- [graphics_quality_options, horizontal_resolution, image_brightness, image_color_mode, image_contrast, paper_color, pixel_format, resolution, scale, use_anti_aliasing, use_gdi_emf_renderer, use_high_quality_rendering, vertical_resolution, color_mode, jpeg_quality, metafile_rendering_options, numeral_format, optimize_output, page_count, page_index, save_format, file_name, dml_rendering_mode, dml_effects_rendering_mode, zip_output, update_last_saved_time_property, update_sdt_content, update_fields].hash
421
+ [graphics_quality_options, horizontal_resolution, image_brightness, image_color_mode, image_contrast, paper_color, pixel_format, resolution, scale, use_anti_aliasing, use_gdi_emf_renderer, use_high_quality_rendering, vertical_resolution, color_mode, jpeg_quality, metafile_rendering_options, numeral_format, optimize_output, page_count, page_index, save_format, file_name, dml_rendering_mode, dml_effects_rendering_mode, zip_output, update_last_saved_time_property, update_sdt_content, update_fields, dml3_d_effects_rendering_mode, update_last_printed_property].hash
365
422
  end
366
423
 
367
424
  # Builds the object from hash
@@ -0,0 +1,237 @@
1
+
2
+ require 'date'
3
+
4
+ module AsposeWordsCloud
5
+ #
6
+ # --------------------------------------------------------------------------------------------------------------------
7
+ # <copyright company="Aspose" file="CsvDataLoadOptions.rb">
8
+ # Copyright (c) 2019 Aspose.Words for Cloud
9
+ # </copyright>
10
+ # <summary>
11
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
12
+ # of this software and associated documentation files (the "Software"), to deal
13
+ # in the Software without restriction, including without limitation the rights
14
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15
+ # copies of the Software, and to permit persons to whom the Software is
16
+ # furnished to do so, subject to the following conditions:
17
+ #
18
+ # The above copyright notice and this permission notice shall be included in all
19
+ # copies or substantial portions of the Software.
20
+ #
21
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
27
+ # SOFTWARE.
28
+ # </summary>
29
+ # --------------------------------------------------------------------------------------------------------------------
30
+ #
31
+
32
+ # Represents options for parsing CSV data.
33
+ class CsvDataLoadOptions
34
+ # Gets or sets a value indicating whether the first record of CSV data contains column names.
35
+ attr_accessor :has_headers
36
+
37
+ # Gets or sets the character to be used as a column delimiter.
38
+ attr_accessor :delimiter
39
+
40
+ # Gets or sets the character that is used to quote field values.
41
+ attr_accessor :quote_char
42
+
43
+ # Gets or sets the character that is used to comment lines of CSV data.
44
+ attr_accessor :comment_char
45
+
46
+
47
+ # Attribute mapping from ruby-style variable name to JSON key.
48
+ def self.attribute_map
49
+ {
50
+ :'has_headers' => :'HasHeaders',
51
+ :'delimiter' => :'Delimiter',
52
+ :'quote_char' => :'QuoteChar',
53
+ :'comment_char' => :'CommentChar'
54
+ }
55
+ end
56
+
57
+ # Attribute type mapping.
58
+ def self.swagger_types
59
+ {
60
+ :'has_headers' => :'BOOLEAN',
61
+ :'delimiter' => :'String',
62
+ :'quote_char' => :'String',
63
+ :'comment_char' => :'String'
64
+ }
65
+ end
66
+
67
+ # Initializes the object
68
+ # @param [Hash] attributes Model attributes in the form of hash
69
+ def initialize(attributes = {})
70
+ return unless attributes.is_a?(Hash)
71
+
72
+ # convert string to symbol for hash key
73
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
74
+
75
+ if attributes.key?(:'HasHeaders')
76
+ self.has_headers = attributes[:'HasHeaders']
77
+ end
78
+
79
+ if attributes.key?(:'Delimiter')
80
+ self.delimiter = attributes[:'Delimiter']
81
+ end
82
+
83
+ if attributes.key?(:'QuoteChar')
84
+ self.quote_char = attributes[:'QuoteChar']
85
+ end
86
+
87
+ if attributes.key?(:'CommentChar')
88
+ self.comment_char = attributes[:'CommentChar']
89
+ end
90
+
91
+ end
92
+
93
+ # Show invalid properties with the reasons. Usually used together with valid?
94
+ # @return Array for valid properies with the reasons
95
+ def list_invalid_properties
96
+ invalid_properties = []
97
+ return invalid_properties
98
+ end
99
+
100
+ # Check to see if the all the properties in the model are valid
101
+ # @return true if the model is valid
102
+ def valid?
103
+ return true
104
+ end
105
+
106
+ # Checks equality by comparing each attribute.
107
+ # @param [Object] Object to be compared
108
+ def ==(other)
109
+ return true if self.equal?(other)
110
+ self.class == other.class &&
111
+ has_headers == other.has_headers &&
112
+ delimiter == other.delimiter &&
113
+ quote_char == other.quote_char &&
114
+ comment_char == other.comment_char
115
+ end
116
+
117
+ # @see the `==` method
118
+ # @param [Object] Object to be compared
119
+ def eql?(other)
120
+ self == other
121
+ end
122
+
123
+ # Calculates hash code according to all attributes.
124
+ # @return [Fixnum] Hash code
125
+ def hash
126
+ [has_headers, delimiter, quote_char, comment_char].hash
127
+ end
128
+
129
+ # Builds the object from hash
130
+ # @param [Hash] attributes Model attributes in the form of hash
131
+ # @return [Object] Returns the model itself
132
+ def build_from_hash(attributes)
133
+ return nil unless attributes.is_a?(Hash)
134
+ self.class.swagger_types.each_pair do |key, type|
135
+ if type =~ /\AArray<(.*)>/i
136
+ # check to ensure the input is an array given that the the attribute
137
+ # is documented as an array but the input is not
138
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
139
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
140
+ end
141
+ elsif !attributes[self.class.attribute_map[key]].nil?
142
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
143
+ end
144
+ # or else data not found in attributes(hash), not an issue as the data can be optional
145
+ end
146
+
147
+ self
148
+ end
149
+
150
+ # Deserializes the data based on type
151
+ # @param string type Data type
152
+ # @param string value Value to be deserialized
153
+ # @return [Object] Deserialized data
154
+ def _deserialize(type, value)
155
+ case type.to_sym
156
+ when :DateTime
157
+ Time.at(/\d/.match(value)[0].to_f).to_datetime
158
+ when :Date
159
+ Time.at(/\d/.match(value)[0].to_f).to_date
160
+ when :String
161
+ value.to_s
162
+ when :Integer
163
+ value.to_i
164
+ when :Float
165
+ value.to_f
166
+ when :BOOLEAN
167
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
168
+ true
169
+ else
170
+ false
171
+ end
172
+ when :Object
173
+ # generic object (usually a Hash), return directly
174
+ value
175
+ when /\AArray<(?<inner_type>.+)>\z/
176
+ inner_type = Regexp.last_match[:inner_type]
177
+ value.map { |v| _deserialize(inner_type, v) }
178
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
179
+ k_type = Regexp.last_match[:k_type]
180
+ v_type = Regexp.last_match[:v_type]
181
+ {}.tap do |hash|
182
+ value.each do |k, v|
183
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
184
+ end
185
+ end
186
+ else
187
+ # model
188
+ temp_model = AsposeWordsCloud.const_get(type).new
189
+ temp_model.build_from_hash(value)
190
+ end
191
+ end
192
+
193
+ # Returns the string representation of the object
194
+ # @return [String] String presentation of the object
195
+ def to_s
196
+ to_hash.to_s
197
+ end
198
+
199
+ # to_body is an alias to to_hash (backward compatibility)
200
+ # @return [Hash] Returns the object in the form of hash
201
+ def to_body
202
+ to_hash
203
+ end
204
+
205
+ # Returns the object in the form of hash
206
+ # @return [Hash] Returns the object in the form of hash
207
+ def to_hash
208
+ hash = {}
209
+ self.class.attribute_map.each_pair do |attr, param|
210
+ value = self.send(attr)
211
+ next if value.nil?
212
+ hash[param] = _to_hash(value)
213
+ end
214
+ hash
215
+ end
216
+
217
+ # Outputs non-array value in the form of hash
218
+ # For object, use to_hash. Otherwise, just return the value
219
+ # @param [Object] value Any valid value
220
+ # @return [Hash] Returns the value in the form of hash
221
+ def _to_hash(value)
222
+ if value.is_a?(Array)
223
+ value.compact.map { |v| _to_hash(v) }
224
+ elsif value.is_a?(Hash)
225
+ {}.tap do |hash|
226
+ value.each { |k, v| hash[k] = _to_hash(v) }
227
+ end
228
+ elsif value.respond_to? :to_hash
229
+ value.to_hash
230
+ else
231
+ value
232
+ end
233
+ end
234
+
235
+ end
236
+
237
+ end
@@ -55,6 +55,12 @@ module AsposeWordsCloud
55
55
  # Gets or sets a value determining if fields should be updated before saving the document to a fixed page format. Default value for this property is. true
56
56
  attr_accessor :update_fields
57
57
 
58
+ # Gets or sets a value determining how 3D effects are rendered.
59
+ attr_accessor :dml3_d_effects_rendering_mode
60
+
61
+ # Gets or sets a value determining whether the Aspose.Words.Properties.BuiltInDocumentProperties.LastPrinted property is updated before saving.
62
+ attr_accessor :update_last_printed_property
63
+
58
64
  # Gets or sets When false, small metafiles are not compressed for performance reason. Default value is true, all metafiles are compressed regardless of its size.
59
65
  attr_accessor :always_compress_metafiles
60
66
 
@@ -67,6 +73,27 @@ module AsposeWordsCloud
67
73
  # Gets or sets determine whether or not save RoutingSlip data saved to output document.
68
74
  attr_accessor :save_routing_slip
69
75
 
76
+ class EnumAttributeValidator
77
+ attr_reader :datatype
78
+ attr_reader :allowable_values
79
+
80
+ def initialize(datatype, allowable_values)
81
+ @allowable_values = allowable_values.map do |value|
82
+ case datatype.to_s
83
+ when /Integer/i
84
+ value.to_i
85
+ when /Float/i
86
+ value.to_f
87
+ else
88
+ value
89
+ end
90
+ end
91
+ end
92
+
93
+ def valid?(value)
94
+ !value || allowable_values.include?(value)
95
+ end
96
+ end
70
97
 
71
98
  # Attribute mapping from ruby-style variable name to JSON key.
72
99
  def self.attribute_map
@@ -79,6 +106,8 @@ module AsposeWordsCloud
79
106
  :'update_last_saved_time_property' => :'UpdateLastSavedTimeProperty',
80
107
  :'update_sdt_content' => :'UpdateSdtContent',
81
108
  :'update_fields' => :'UpdateFields',
109
+ :'dml3_d_effects_rendering_mode' => :'Dml3DEffectsRenderingMode',
110
+ :'update_last_printed_property' => :'UpdateLastPrintedProperty',
82
111
  :'always_compress_metafiles' => :'AlwaysCompressMetafiles',
83
112
  :'password' => :'Password',
84
113
  :'save_picture_bullet' => :'SavePictureBullet',
@@ -97,6 +126,8 @@ module AsposeWordsCloud
97
126
  :'update_last_saved_time_property' => :'BOOLEAN',
98
127
  :'update_sdt_content' => :'BOOLEAN',
99
128
  :'update_fields' => :'BOOLEAN',
129
+ :'dml3_d_effects_rendering_mode' => :'String',
130
+ :'update_last_printed_property' => :'BOOLEAN',
100
131
  :'always_compress_metafiles' => :'BOOLEAN',
101
132
  :'password' => :'String',
102
133
  :'save_picture_bullet' => :'BOOLEAN',
@@ -144,6 +175,14 @@ module AsposeWordsCloud
144
175
  self.update_fields = attributes[:'UpdateFields']
145
176
  end
146
177
 
178
+ if attributes.key?(:'Dml3DEffectsRenderingMode')
179
+ self.dml3_d_effects_rendering_mode = attributes[:'Dml3DEffectsRenderingMode']
180
+ end
181
+
182
+ if attributes.key?(:'UpdateLastPrintedProperty')
183
+ self.update_last_printed_property = attributes[:'UpdateLastPrintedProperty']
184
+ end
185
+
147
186
  if attributes.key?(:'AlwaysCompressMetafiles')
148
187
  self.always_compress_metafiles = attributes[:'AlwaysCompressMetafiles']
149
188
  end
@@ -172,9 +211,25 @@ module AsposeWordsCloud
172
211
  # Check to see if the all the properties in the model are valid
173
212
  # @return true if the model is valid
174
213
  def valid?
214
+ dml3_d_effects_rendering_mode_validator = EnumAttributeValidator.new('String', ["Basic", "Advanced"])
215
+ return false unless dml3_d_effects_rendering_mode_validator.valid?(@dml3_d_effects_rendering_mode)
175
216
  return true
176
217
  end
177
218
 
219
+ # Custom attribute writer method checking allowed values (enum).
220
+ # @param [Object] dml3_d_effects_rendering_mode Object to be assigned
221
+ def dml3_d_effects_rendering_mode=(dml3_d_effects_rendering_mode)
222
+ validator = EnumAttributeValidator.new('String', ["Basic", "Advanced"])
223
+ if dml3_d_effects_rendering_mode.to_i == 0
224
+ unless validator.valid?(dml3_d_effects_rendering_mode)
225
+ raise ArgumentError, "invalid value for 'dml3_d_effects_rendering_mode', must be one of #{validator.allowable_values}."
226
+ end
227
+ @dml3_d_effects_rendering_mode = dml3_d_effects_rendering_mode
228
+ else
229
+ @dml3_d_effects_rendering_mode = validator.allowable_values[dml3_d_effects_rendering_mode.to_i]
230
+ end
231
+ end
232
+
178
233
  # Checks equality by comparing each attribute.
179
234
  # @param [Object] Object to be compared
180
235
  def ==(other)
@@ -188,6 +243,8 @@ module AsposeWordsCloud
188
243
  update_last_saved_time_property == other.update_last_saved_time_property &&
189
244
  update_sdt_content == other.update_sdt_content &&
190
245
  update_fields == other.update_fields &&
246
+ dml3_d_effects_rendering_mode == other.dml3_d_effects_rendering_mode &&
247
+ update_last_printed_property == other.update_last_printed_property &&
191
248
  always_compress_metafiles == other.always_compress_metafiles &&
192
249
  password == other.password &&
193
250
  save_picture_bullet == other.save_picture_bullet &&
@@ -203,7 +260,7 @@ module AsposeWordsCloud
203
260
  # Calculates hash code according to all attributes.
204
261
  # @return [Fixnum] Hash code
205
262
  def hash
206
- [save_format, file_name, dml_rendering_mode, dml_effects_rendering_mode, zip_output, update_last_saved_time_property, update_sdt_content, update_fields, always_compress_metafiles, password, save_picture_bullet, save_routing_slip].hash
263
+ [save_format, file_name, dml_rendering_mode, dml_effects_rendering_mode, zip_output, update_last_saved_time_property, update_sdt_content, update_fields, dml3_d_effects_rendering_mode, update_last_printed_property, always_compress_metafiles, password, save_picture_bullet, save_routing_slip].hash
207
264
  end
208
265
 
209
266
  # Builds the object from hash