cloudmersive-convert-api-client 1.2.3 → 1.2.8

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.
Files changed (171) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +201 -0
  3. data/build.ps1 +12 -0
  4. data/client/Gemfile +7 -0
  5. data/client/README.md +184 -0
  6. data/client/Rakefile +8 -0
  7. data/client/cloudmersive-convert-api-client.gemspec +45 -0
  8. data/client/docs/CompareDocumentApi.md +66 -0
  9. data/client/docs/ConvertDataApi.md +118 -0
  10. data/client/docs/ConvertDocumentApi.md +723 -0
  11. data/client/docs/ConvertImageApi.md +69 -0
  12. data/client/docs/ConvertTemplateApi.md +63 -0
  13. data/client/docs/ConvertWebApi.md +283 -0
  14. data/client/docs/ConvertedPngPage.md +9 -0
  15. data/client/docs/DocumentValidationError.md +11 -0
  16. data/client/docs/DocumentValidationResult.md +11 -0
  17. data/client/docs/DocxFooter.md +9 -0
  18. data/client/docs/DocxHeader.md +9 -0
  19. data/client/docs/DocxInsertImageRequest.md +13 -0
  20. data/client/docs/DocxInsertImageResponse.md +9 -0
  21. data/client/docs/DocxParagraph.md +10 -0
  22. data/client/docs/DocxRun.md +14 -0
  23. data/client/docs/DocxSection.md +8 -0
  24. data/client/docs/DocxSetFooterRequest.md +10 -0
  25. data/client/docs/DocxSetFooterResponse.md +9 -0
  26. data/client/docs/DocxSetHeaderRequest.md +10 -0
  27. data/client/docs/DocxSetHeaderResponse.md +9 -0
  28. data/client/docs/DocxStyle.md +13 -0
  29. data/client/docs/DocxTable.md +45 -0
  30. data/client/docs/DocxTableCell.md +14 -0
  31. data/client/docs/DocxTableRow.md +9 -0
  32. data/client/docs/DocxText.md +9 -0
  33. data/client/docs/EditDocumentApi.md +668 -0
  34. data/client/docs/FinishEditingRequest.md +8 -0
  35. data/client/docs/GetDocxHeadersAndFootersRequest.md +9 -0
  36. data/client/docs/GetDocxHeadersAndFootersResponse.md +10 -0
  37. data/client/docs/GetDocxStylesRequest.md +9 -0
  38. data/client/docs/GetDocxStylesResponse.md +9 -0
  39. data/client/docs/GetDocxTablesRequest.md +9 -0
  40. data/client/docs/GetDocxTablesResponse.md +9 -0
  41. data/client/docs/HtmlMdResult.md +9 -0
  42. data/client/docs/HtmlTemplateApplicationRequest.md +10 -0
  43. data/client/docs/HtmlTemplateApplicationResponse.md +9 -0
  44. data/client/docs/HtmlTemplateOperation.md +10 -0
  45. data/client/docs/HtmlToOfficeRequest.md +8 -0
  46. data/client/docs/HtmlToPdfRequest.md +9 -0
  47. data/client/docs/InsertDocxTablesRequest.md +10 -0
  48. data/client/docs/InsertDocxTablesResponse.md +9 -0
  49. data/client/docs/MergeDocumentApi.md +182 -0
  50. data/client/docs/PdfToPngResult.md +9 -0
  51. data/client/docs/RemoveDocxHeadersAndFootersRequest.md +11 -0
  52. data/client/docs/RemoveDocxHeadersAndFootersResponse.md +9 -0
  53. data/client/docs/ReplaceStringRequest.md +12 -0
  54. data/client/docs/ScreenshotRequest.md +9 -0
  55. data/client/docs/ValidateDocumentApi.md +173 -0
  56. data/client/docs/ViewerResponse.md +9 -0
  57. data/client/docs/ViewerToolsApi.md +63 -0
  58. data/client/git_push.sh +55 -0
  59. data/client/lib/cloudmersive-convert-api-client.rb +89 -0
  60. data/client/lib/cloudmersive-convert-api-client/api/compare_document_api.rb +86 -0
  61. data/client/lib/cloudmersive-convert-api-client/api/convert_data_api.rb +135 -0
  62. data/client/lib/cloudmersive-convert-api-client/api/convert_document_api.rb +751 -0
  63. data/client/lib/cloudmersive-convert-api-client/api/convert_image_api.rb +91 -0
  64. data/client/lib/cloudmersive-convert-api-client/api/convert_template_api.rb +78 -0
  65. data/client/lib/cloudmersive-convert-api-client/api/convert_web_api.rb +299 -0
  66. data/client/lib/cloudmersive-convert-api-client/api/edit_document_api.rb +684 -0
  67. data/client/lib/cloudmersive-convert-api-client/api/merge_document_api.rb +212 -0
  68. data/client/lib/cloudmersive-convert-api-client/api/validate_document_api.rb +191 -0
  69. data/client/lib/cloudmersive-convert-api-client/api/viewer_tools_api.rb +79 -0
  70. data/client/lib/cloudmersive-convert-api-client/api_client.rb +389 -0
  71. data/client/lib/cloudmersive-convert-api-client/api_error.rb +38 -0
  72. data/client/lib/cloudmersive-convert-api-client/configuration.rb +209 -0
  73. data/client/lib/cloudmersive-convert-api-client/models/converted_png_page.rb +199 -0
  74. data/client/lib/cloudmersive-convert-api-client/models/document_validation_error.rb +219 -0
  75. data/client/lib/cloudmersive-convert-api-client/models/document_validation_result.rb +221 -0
  76. data/client/lib/cloudmersive-convert-api-client/models/docx_footer.rb +203 -0
  77. data/client/lib/cloudmersive-convert-api-client/models/docx_header.rb +203 -0
  78. data/client/lib/cloudmersive-convert-api-client/models/docx_insert_image_request.rb +271 -0
  79. data/client/lib/cloudmersive-convert-api-client/models/docx_insert_image_response.rb +199 -0
  80. data/client/lib/cloudmersive-convert-api-client/models/docx_paragraph.rb +211 -0
  81. data/client/lib/cloudmersive-convert-api-client/models/docx_run.rb +251 -0
  82. data/client/lib/cloudmersive-convert-api-client/models/docx_section.rb +191 -0
  83. data/client/lib/cloudmersive-convert-api-client/models/docx_set_footer_request.rb +225 -0
  84. data/client/lib/cloudmersive-convert-api-client/models/docx_set_footer_response.rb +199 -0
  85. data/client/lib/cloudmersive-convert-api-client/models/docx_set_header_request.rb +225 -0
  86. data/client/lib/cloudmersive-convert-api-client/models/docx_set_header_response.rb +199 -0
  87. data/client/lib/cloudmersive-convert-api-client/models/docx_style.rb +239 -0
  88. data/client/lib/cloudmersive-convert-api-client/models/docx_table.rb +561 -0
  89. data/client/lib/cloudmersive-convert-api-client/models/docx_table_cell.rb +251 -0
  90. data/client/lib/cloudmersive-convert-api-client/models/docx_table_row.rb +201 -0
  91. data/client/lib/cloudmersive-convert-api-client/models/docx_text.rb +199 -0
  92. data/client/lib/cloudmersive-convert-api-client/models/finish_editing_request.rb +189 -0
  93. data/client/lib/cloudmersive-convert-api-client/models/get_docx_headers_and_footers_request.rb +215 -0
  94. data/client/lib/cloudmersive-convert-api-client/models/get_docx_headers_and_footers_response.rb +211 -0
  95. data/client/lib/cloudmersive-convert-api-client/models/get_docx_styles_request.rb +215 -0
  96. data/client/lib/cloudmersive-convert-api-client/models/get_docx_styles_response.rb +201 -0
  97. data/client/lib/cloudmersive-convert-api-client/models/get_docx_tables_request.rb +215 -0
  98. data/client/lib/cloudmersive-convert-api-client/models/get_docx_tables_response.rb +201 -0
  99. data/client/lib/cloudmersive-convert-api-client/models/html_md_result.rb +199 -0
  100. data/client/lib/cloudmersive-convert-api-client/models/html_template_application_request.rb +208 -0
  101. data/client/lib/cloudmersive-convert-api-client/models/html_template_application_response.rb +197 -0
  102. data/client/lib/cloudmersive-convert-api-client/models/html_template_operation.rb +239 -0
  103. data/client/lib/cloudmersive-convert-api-client/models/html_to_office_request.rb +188 -0
  104. data/client/lib/cloudmersive-convert-api-client/models/html_to_pdf_request.rb +197 -0
  105. data/client/lib/cloudmersive-convert-api-client/models/insert_docx_tables_request.rb +225 -0
  106. data/client/lib/cloudmersive-convert-api-client/models/insert_docx_tables_response.rb +199 -0
  107. data/client/lib/cloudmersive-convert-api-client/models/pdf_to_png_result.rb +201 -0
  108. data/client/lib/cloudmersive-convert-api-client/models/remove_docx_headers_and_footers_request.rb +235 -0
  109. data/client/lib/cloudmersive-convert-api-client/models/remove_docx_headers_and_footers_response.rb +199 -0
  110. data/client/lib/cloudmersive-convert-api-client/models/replace_string_request.rb +245 -0
  111. data/client/lib/cloudmersive-convert-api-client/models/screenshot_request.rb +197 -0
  112. data/client/lib/cloudmersive-convert-api-client/models/viewer_response.rb +197 -0
  113. data/client/lib/cloudmersive-convert-api-client/version.rb +15 -0
  114. data/client/spec/api/compare_document_api_spec.rb +48 -0
  115. data/client/spec/api/convert_data_api_spec.rb +59 -0
  116. data/client/spec/api/convert_document_api_spec.rb +191 -0
  117. data/client/spec/api/convert_image_api_spec.rb +49 -0
  118. data/client/spec/api/convert_template_api_spec.rb +47 -0
  119. data/client/spec/api/convert_web_api_spec.rb +95 -0
  120. data/client/spec/api/edit_document_api_spec.rb +179 -0
  121. data/client/spec/api/merge_document_api_spec.rb +74 -0
  122. data/client/spec/api/validate_document_api_spec.rb +71 -0
  123. data/client/spec/api/viewer_tools_api_spec.rb +47 -0
  124. data/client/spec/api_client_spec.rb +226 -0
  125. data/client/spec/configuration_spec.rb +42 -0
  126. data/client/spec/models/converted_png_page_spec.rb +48 -0
  127. data/client/spec/models/document_validation_error_spec.rb +60 -0
  128. data/client/spec/models/document_validation_result_spec.rb +60 -0
  129. data/client/spec/models/docx_footer_spec.rb +48 -0
  130. data/client/spec/models/docx_header_spec.rb +48 -0
  131. data/client/spec/models/docx_insert_image_request_spec.rb +72 -0
  132. data/client/spec/models/docx_insert_image_response_spec.rb +48 -0
  133. data/client/spec/models/docx_paragraph_spec.rb +54 -0
  134. data/client/spec/models/docx_run_spec.rb +78 -0
  135. data/client/spec/models/docx_section_spec.rb +42 -0
  136. data/client/spec/models/docx_set_footer_request_spec.rb +54 -0
  137. data/client/spec/models/docx_set_footer_response_spec.rb +48 -0
  138. data/client/spec/models/docx_set_header_request_spec.rb +54 -0
  139. data/client/spec/models/docx_set_header_response_spec.rb +48 -0
  140. data/client/spec/models/docx_style_spec.rb +72 -0
  141. data/client/spec/models/docx_table_cell_spec.rb +78 -0
  142. data/client/spec/models/docx_table_row_spec.rb +48 -0
  143. data/client/spec/models/docx_table_spec.rb +264 -0
  144. data/client/spec/models/docx_text_spec.rb +48 -0
  145. data/client/spec/models/finish_editing_request_spec.rb +42 -0
  146. data/client/spec/models/get_docx_headers_and_footers_request_spec.rb +48 -0
  147. data/client/spec/models/get_docx_headers_and_footers_response_spec.rb +54 -0
  148. data/client/spec/models/get_docx_styles_request_spec.rb +48 -0
  149. data/client/spec/models/get_docx_styles_response_spec.rb +48 -0
  150. data/client/spec/models/get_docx_tables_request_spec.rb +48 -0
  151. data/client/spec/models/get_docx_tables_response_spec.rb +48 -0
  152. data/client/spec/models/html_md_result_spec.rb +48 -0
  153. data/client/spec/models/html_template_application_request_spec.rb +54 -0
  154. data/client/spec/models/html_template_application_response_spec.rb +48 -0
  155. data/client/spec/models/html_template_operation_spec.rb +58 -0
  156. data/client/spec/models/html_to_office_request_spec.rb +42 -0
  157. data/client/spec/models/html_to_pdf_request_spec.rb +48 -0
  158. data/client/spec/models/insert_docx_tables_request_spec.rb +54 -0
  159. data/client/spec/models/insert_docx_tables_response_spec.rb +48 -0
  160. data/client/spec/models/pdf_to_png_result_spec.rb +48 -0
  161. data/client/spec/models/remove_docx_headers_and_footers_request_spec.rb +60 -0
  162. data/client/spec/models/remove_docx_headers_and_footers_response_spec.rb +48 -0
  163. data/client/spec/models/replace_string_request_spec.rb +66 -0
  164. data/client/spec/models/screenshot_request_spec.rb +48 -0
  165. data/client/spec/models/viewer_response_spec.rb +48 -0
  166. data/client/spec/spec_helper.rb +111 -0
  167. data/cloudmersiveConvertApiClient-1.2.6.gem +0 -0
  168. data/cloudmersiveConvertApiClient-1.2.7.gem +0 -0
  169. data/packageconfig.json +11 -0
  170. data/swagger-codegen-cli.jar +0 -0
  171. metadata +173 -3
@@ -0,0 +1,251 @@
1
+ =begin
2
+ #convertapi
3
+
4
+ #Convert API lets you effortlessly convert file formats and types.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: unset
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CloudmersiveConvertApiClient
16
+ # A cell in a Word Document (DOCX) file
17
+ class DocxTableCell
18
+ # The index of the cell, 0-based
19
+ attr_accessor :cell_index
20
+
21
+ # Paragraphs inside the cell; this is where the contents of the cell are stored
22
+ attr_accessor :paragraphs
23
+
24
+ # Color of the cell shading
25
+ attr_accessor :cell_shading_color
26
+
27
+ # Fill of the cell shading
28
+ attr_accessor :cell_shading_fill
29
+
30
+ # Pattern of the cell shading
31
+ attr_accessor :cell_shading_pattern
32
+
33
+ # Width mode of the cell; can be auto (for automatic) or manual
34
+ attr_accessor :cell_width_mode
35
+
36
+ # Width of the cell
37
+ attr_accessor :cell_width
38
+
39
+
40
+ # Attribute mapping from ruby-style variable name to JSON key.
41
+ def self.attribute_map
42
+ {
43
+ :'cell_index' => :'CellIndex',
44
+ :'paragraphs' => :'Paragraphs',
45
+ :'cell_shading_color' => :'CellShadingColor',
46
+ :'cell_shading_fill' => :'CellShadingFill',
47
+ :'cell_shading_pattern' => :'CellShadingPattern',
48
+ :'cell_width_mode' => :'CellWidthMode',
49
+ :'cell_width' => :'CellWidth'
50
+ }
51
+ end
52
+
53
+ # Attribute type mapping.
54
+ def self.swagger_types
55
+ {
56
+ :'cell_index' => :'Integer',
57
+ :'paragraphs' => :'Array<DocxParagraph>',
58
+ :'cell_shading_color' => :'String',
59
+ :'cell_shading_fill' => :'String',
60
+ :'cell_shading_pattern' => :'String',
61
+ :'cell_width_mode' => :'String',
62
+ :'cell_width' => :'String'
63
+ }
64
+ end
65
+
66
+ # Initializes the object
67
+ # @param [Hash] attributes Model attributes in the form of hash
68
+ def initialize(attributes = {})
69
+ return unless attributes.is_a?(Hash)
70
+
71
+ # convert string to symbol for hash key
72
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
73
+
74
+ if attributes.has_key?(:'CellIndex')
75
+ self.cell_index = attributes[:'CellIndex']
76
+ end
77
+
78
+ if attributes.has_key?(:'Paragraphs')
79
+ if (value = attributes[:'Paragraphs']).is_a?(Array)
80
+ self.paragraphs = value
81
+ end
82
+ end
83
+
84
+ if attributes.has_key?(:'CellShadingColor')
85
+ self.cell_shading_color = attributes[:'CellShadingColor']
86
+ end
87
+
88
+ if attributes.has_key?(:'CellShadingFill')
89
+ self.cell_shading_fill = attributes[:'CellShadingFill']
90
+ end
91
+
92
+ if attributes.has_key?(:'CellShadingPattern')
93
+ self.cell_shading_pattern = attributes[:'CellShadingPattern']
94
+ end
95
+
96
+ if attributes.has_key?(:'CellWidthMode')
97
+ self.cell_width_mode = attributes[:'CellWidthMode']
98
+ end
99
+
100
+ if attributes.has_key?(:'CellWidth')
101
+ self.cell_width = attributes[:'CellWidth']
102
+ end
103
+
104
+ end
105
+
106
+ # Show invalid properties with the reasons. Usually used together with valid?
107
+ # @return Array for valid properties with the reasons
108
+ def list_invalid_properties
109
+ invalid_properties = Array.new
110
+ return invalid_properties
111
+ end
112
+
113
+ # Check to see if the all the properties in the model are valid
114
+ # @return true if the model is valid
115
+ def valid?
116
+ return true
117
+ end
118
+
119
+ # Checks equality by comparing each attribute.
120
+ # @param [Object] Object to be compared
121
+ def ==(o)
122
+ return true if self.equal?(o)
123
+ self.class == o.class &&
124
+ cell_index == o.cell_index &&
125
+ paragraphs == o.paragraphs &&
126
+ cell_shading_color == o.cell_shading_color &&
127
+ cell_shading_fill == o.cell_shading_fill &&
128
+ cell_shading_pattern == o.cell_shading_pattern &&
129
+ cell_width_mode == o.cell_width_mode &&
130
+ cell_width == o.cell_width
131
+ end
132
+
133
+ # @see the `==` method
134
+ # @param [Object] Object to be compared
135
+ def eql?(o)
136
+ self == o
137
+ end
138
+
139
+ # Calculates hash code according to all attributes.
140
+ # @return [Fixnum] Hash code
141
+ def hash
142
+ [cell_index, paragraphs, cell_shading_color, cell_shading_fill, cell_shading_pattern, cell_width_mode, cell_width].hash
143
+ end
144
+
145
+ # Builds the object from hash
146
+ # @param [Hash] attributes Model attributes in the form of hash
147
+ # @return [Object] Returns the model itself
148
+ def build_from_hash(attributes)
149
+ return nil unless attributes.is_a?(Hash)
150
+ self.class.swagger_types.each_pair do |key, type|
151
+ if type =~ /\AArray<(.*)>/i
152
+ # check to ensure the input is an array given that the the attribute
153
+ # is documented as an array but the input is not
154
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
155
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
156
+ end
157
+ elsif !attributes[self.class.attribute_map[key]].nil?
158
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
159
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
160
+ end
161
+
162
+ self
163
+ end
164
+
165
+ # Deserializes the data based on type
166
+ # @param string type Data type
167
+ # @param string value Value to be deserialized
168
+ # @return [Object] Deserialized data
169
+ def _deserialize(type, value)
170
+ case type.to_sym
171
+ when :DateTime
172
+ DateTime.parse(value)
173
+ when :Date
174
+ Date.parse(value)
175
+ when :String
176
+ value.to_s
177
+ when :Integer
178
+ value.to_i
179
+ when :Float
180
+ value.to_f
181
+ when :BOOLEAN
182
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
183
+ true
184
+ else
185
+ false
186
+ end
187
+ when :Object
188
+ # generic object (usually a Hash), return directly
189
+ value
190
+ when /\AArray<(?<inner_type>.+)>\z/
191
+ inner_type = Regexp.last_match[:inner_type]
192
+ value.map { |v| _deserialize(inner_type, v) }
193
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
194
+ k_type = Regexp.last_match[:k_type]
195
+ v_type = Regexp.last_match[:v_type]
196
+ {}.tap do |hash|
197
+ value.each do |k, v|
198
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
199
+ end
200
+ end
201
+ else # model
202
+ temp_model = CloudmersiveConvertApiClient.const_get(type).new
203
+ temp_model.build_from_hash(value)
204
+ end
205
+ end
206
+
207
+ # Returns the string representation of the object
208
+ # @return [String] String presentation of the object
209
+ def to_s
210
+ to_hash.to_s
211
+ end
212
+
213
+ # to_body is an alias to to_hash (backward compatibility)
214
+ # @return [Hash] Returns the object in the form of hash
215
+ def to_body
216
+ to_hash
217
+ end
218
+
219
+ # Returns the object in the form of hash
220
+ # @return [Hash] Returns the object in the form of hash
221
+ def to_hash
222
+ hash = {}
223
+ self.class.attribute_map.each_pair do |attr, param|
224
+ value = self.send(attr)
225
+ next if value.nil?
226
+ hash[param] = _to_hash(value)
227
+ end
228
+ hash
229
+ end
230
+
231
+ # Outputs non-array value in the form of hash
232
+ # For object, use to_hash. Otherwise, just return the value
233
+ # @param [Object] value Any valid value
234
+ # @return [Hash] Returns the value in the form of hash
235
+ def _to_hash(value)
236
+ if value.is_a?(Array)
237
+ value.compact.map{ |v| _to_hash(v) }
238
+ elsif value.is_a?(Hash)
239
+ {}.tap do |hash|
240
+ value.each { |k, v| hash[k] = _to_hash(v) }
241
+ end
242
+ elsif value.respond_to? :to_hash
243
+ value.to_hash
244
+ else
245
+ value
246
+ end
247
+ end
248
+
249
+ end
250
+
251
+ end
@@ -0,0 +1,201 @@
1
+ =begin
2
+ #convertapi
3
+
4
+ #Convert API lets you effortlessly convert file formats and types.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: unset
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CloudmersiveConvertApiClient
16
+ # A row in a Word Document (DOCX) file
17
+ class DocxTableRow
18
+ # Index of the row, 0-based
19
+ attr_accessor :row_index
20
+
21
+ # Cells in the row; this is where the contents of the row is stored
22
+ attr_accessor :row_cells
23
+
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'row_index' => :'RowIndex',
29
+ :'row_cells' => :'RowCells'
30
+ }
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.swagger_types
35
+ {
36
+ :'row_index' => :'Integer',
37
+ :'row_cells' => :'Array<DocxTableCell>'
38
+ }
39
+ end
40
+
41
+ # Initializes the object
42
+ # @param [Hash] attributes Model attributes in the form of hash
43
+ def initialize(attributes = {})
44
+ return unless attributes.is_a?(Hash)
45
+
46
+ # convert string to symbol for hash key
47
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
48
+
49
+ if attributes.has_key?(:'RowIndex')
50
+ self.row_index = attributes[:'RowIndex']
51
+ end
52
+
53
+ if attributes.has_key?(:'RowCells')
54
+ if (value = attributes[:'RowCells']).is_a?(Array)
55
+ self.row_cells = value
56
+ end
57
+ end
58
+
59
+ end
60
+
61
+ # Show invalid properties with the reasons. Usually used together with valid?
62
+ # @return Array for valid properties with the reasons
63
+ def list_invalid_properties
64
+ invalid_properties = Array.new
65
+ return invalid_properties
66
+ end
67
+
68
+ # Check to see if the all the properties in the model are valid
69
+ # @return true if the model is valid
70
+ def valid?
71
+ return true
72
+ end
73
+
74
+ # Checks equality by comparing each attribute.
75
+ # @param [Object] Object to be compared
76
+ def ==(o)
77
+ return true if self.equal?(o)
78
+ self.class == o.class &&
79
+ row_index == o.row_index &&
80
+ row_cells == o.row_cells
81
+ end
82
+
83
+ # @see the `==` method
84
+ # @param [Object] Object to be compared
85
+ def eql?(o)
86
+ self == o
87
+ end
88
+
89
+ # Calculates hash code according to all attributes.
90
+ # @return [Fixnum] Hash code
91
+ def hash
92
+ [row_index, row_cells].hash
93
+ end
94
+
95
+ # Builds the object from hash
96
+ # @param [Hash] attributes Model attributes in the form of hash
97
+ # @return [Object] Returns the model itself
98
+ def build_from_hash(attributes)
99
+ return nil unless attributes.is_a?(Hash)
100
+ self.class.swagger_types.each_pair do |key, type|
101
+ if type =~ /\AArray<(.*)>/i
102
+ # check to ensure the input is an array given that the the attribute
103
+ # is documented as an array but the input is not
104
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
105
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
106
+ end
107
+ elsif !attributes[self.class.attribute_map[key]].nil?
108
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
109
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
110
+ end
111
+
112
+ self
113
+ end
114
+
115
+ # Deserializes the data based on type
116
+ # @param string type Data type
117
+ # @param string value Value to be deserialized
118
+ # @return [Object] Deserialized data
119
+ def _deserialize(type, value)
120
+ case type.to_sym
121
+ when :DateTime
122
+ DateTime.parse(value)
123
+ when :Date
124
+ Date.parse(value)
125
+ when :String
126
+ value.to_s
127
+ when :Integer
128
+ value.to_i
129
+ when :Float
130
+ value.to_f
131
+ when :BOOLEAN
132
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
133
+ true
134
+ else
135
+ false
136
+ end
137
+ when :Object
138
+ # generic object (usually a Hash), return directly
139
+ value
140
+ when /\AArray<(?<inner_type>.+)>\z/
141
+ inner_type = Regexp.last_match[:inner_type]
142
+ value.map { |v| _deserialize(inner_type, v) }
143
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
144
+ k_type = Regexp.last_match[:k_type]
145
+ v_type = Regexp.last_match[:v_type]
146
+ {}.tap do |hash|
147
+ value.each do |k, v|
148
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
149
+ end
150
+ end
151
+ else # model
152
+ temp_model = CloudmersiveConvertApiClient.const_get(type).new
153
+ temp_model.build_from_hash(value)
154
+ end
155
+ end
156
+
157
+ # Returns the string representation of the object
158
+ # @return [String] String presentation of the object
159
+ def to_s
160
+ to_hash.to_s
161
+ end
162
+
163
+ # to_body is an alias to to_hash (backward compatibility)
164
+ # @return [Hash] Returns the object in the form of hash
165
+ def to_body
166
+ to_hash
167
+ end
168
+
169
+ # Returns the object in the form of hash
170
+ # @return [Hash] Returns the object in the form of hash
171
+ def to_hash
172
+ hash = {}
173
+ self.class.attribute_map.each_pair do |attr, param|
174
+ value = self.send(attr)
175
+ next if value.nil?
176
+ hash[param] = _to_hash(value)
177
+ end
178
+ hash
179
+ end
180
+
181
+ # Outputs non-array value in the form of hash
182
+ # For object, use to_hash. Otherwise, just return the value
183
+ # @param [Object] value Any valid value
184
+ # @return [Hash] Returns the value in the form of hash
185
+ def _to_hash(value)
186
+ if value.is_a?(Array)
187
+ value.compact.map{ |v| _to_hash(v) }
188
+ elsif value.is_a?(Hash)
189
+ {}.tap do |hash|
190
+ value.each { |k, v| hash[k] = _to_hash(v) }
191
+ end
192
+ elsif value.respond_to? :to_hash
193
+ value.to_hash
194
+ else
195
+ value
196
+ end
197
+ end
198
+
199
+ end
200
+
201
+ end