groupdocs_signature_cloud 18.8.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (160) hide show
  1. checksums.yaml +7 -0
  2. data/lib/groupdocs_signature_cloud.rb +191 -0
  3. data/lib/groupdocs_signature_cloud/api/signature_api.rb +2590 -0
  4. data/lib/groupdocs_signature_cloud/api_client.rb +380 -0
  5. data/lib/groupdocs_signature_cloud/api_error.rb +58 -0
  6. data/lib/groupdocs_signature_cloud/configuration.rb +110 -0
  7. data/lib/groupdocs_signature_cloud/models/barcode_collection.rb +232 -0
  8. data/lib/groupdocs_signature_cloud/models/barcode_signature_data.rb +250 -0
  9. data/lib/groupdocs_signature_cloud/models/barcode_type.rb +230 -0
  10. data/lib/groupdocs_signature_cloud/models/base_signature_data.rb +230 -0
  11. data/lib/groupdocs_signature_cloud/models/border_line_data.rb +312 -0
  12. data/lib/groupdocs_signature_cloud/models/brush_data.rb +230 -0
  13. data/lib/groupdocs_signature_cloud/models/cells_barcode_signature_data.rb +250 -0
  14. data/lib/groupdocs_signature_cloud/models/cells_digital_signature_data.rb +307 -0
  15. data/lib/groupdocs_signature_cloud/models/cells_qr_code_signature_data.rb +250 -0
  16. data/lib/groupdocs_signature_cloud/models/cells_search_barcode_options_data.rb +332 -0
  17. data/lib/groupdocs_signature_cloud/models/cells_search_digital_options_data.rb +265 -0
  18. data/lib/groupdocs_signature_cloud/models/cells_search_qr_code_options_data.rb +332 -0
  19. data/lib/groupdocs_signature_cloud/models/cells_sign_barcode_options_data.rb +694 -0
  20. data/lib/groupdocs_signature_cloud/models/cells_sign_digital_options_data.rb +546 -0
  21. data/lib/groupdocs_signature_cloud/models/cells_sign_image_options_data.rb +526 -0
  22. data/lib/groupdocs_signature_cloud/models/cells_sign_qr_code_options_data.rb +704 -0
  23. data/lib/groupdocs_signature_cloud/models/cells_sign_stamp_options_data.rb +622 -0
  24. data/lib/groupdocs_signature_cloud/models/cells_sign_text_options_data.rb +736 -0
  25. data/lib/groupdocs_signature_cloud/models/cells_verify_barcode_options_data.rb +342 -0
  26. data/lib/groupdocs_signature_cloud/models/cells_verify_digital_options_data.rb +315 -0
  27. data/lib/groupdocs_signature_cloud/models/cells_verify_qr_code_options_data.rb +342 -0
  28. data/lib/groupdocs_signature_cloud/models/cells_verify_text_options_data.rb +285 -0
  29. data/lib/groupdocs_signature_cloud/models/color.rb +245 -0
  30. data/lib/groupdocs_signature_cloud/models/digital_signature_data.rb +307 -0
  31. data/lib/groupdocs_signature_cloud/models/document_info.rb +300 -0
  32. data/lib/groupdocs_signature_cloud/models/document_response.rb +302 -0
  33. data/lib/groupdocs_signature_cloud/models/format.rb +240 -0
  34. data/lib/groupdocs_signature_cloud/models/format_collection.rb +232 -0
  35. data/lib/groupdocs_signature_cloud/models/images_barcode_signature_data.rb +250 -0
  36. data/lib/groupdocs_signature_cloud/models/images_qr_code_signature_data.rb +250 -0
  37. data/lib/groupdocs_signature_cloud/models/images_search_barcode_options_data.rb +332 -0
  38. data/lib/groupdocs_signature_cloud/models/images_search_qr_code_options_data.rb +332 -0
  39. data/lib/groupdocs_signature_cloud/models/images_sign_barcode_options_data.rb +664 -0
  40. data/lib/groupdocs_signature_cloud/models/images_sign_image_options_data.rb +496 -0
  41. data/lib/groupdocs_signature_cloud/models/images_sign_qr_code_options_data.rb +674 -0
  42. data/lib/groupdocs_signature_cloud/models/images_sign_stamp_options_data.rb +592 -0
  43. data/lib/groupdocs_signature_cloud/models/images_sign_text_options_data.rb +706 -0
  44. data/lib/groupdocs_signature_cloud/models/images_verify_barcode_options_data.rb +342 -0
  45. data/lib/groupdocs_signature_cloud/models/images_verify_qr_code_options_data.rb +342 -0
  46. data/lib/groupdocs_signature_cloud/models/linear_gradient_brush_data.rb +260 -0
  47. data/lib/groupdocs_signature_cloud/models/padding_data.rb +295 -0
  48. data/lib/groupdocs_signature_cloud/models/page_info.rb +305 -0
  49. data/lib/groupdocs_signature_cloud/models/pages_info.rb +247 -0
  50. data/lib/groupdocs_signature_cloud/models/pages_setup_data.rb +292 -0
  51. data/lib/groupdocs_signature_cloud/models/pdf_barcode_signature_data.rb +250 -0
  52. data/lib/groupdocs_signature_cloud/models/pdf_digital_signature_data.rb +307 -0
  53. data/lib/groupdocs_signature_cloud/models/pdf_qr_code_signature_data.rb +250 -0
  54. data/lib/groupdocs_signature_cloud/models/pdf_search_barcode_options_data.rb +332 -0
  55. data/lib/groupdocs_signature_cloud/models/pdf_search_digital_options_data.rb +265 -0
  56. data/lib/groupdocs_signature_cloud/models/pdf_search_qr_code_options_data.rb +332 -0
  57. data/lib/groupdocs_signature_cloud/models/pdf_sign_barcode_options_data.rb +664 -0
  58. data/lib/groupdocs_signature_cloud/models/pdf_sign_digital_options_data.rb +556 -0
  59. data/lib/groupdocs_signature_cloud/models/pdf_sign_image_options_data.rb +496 -0
  60. data/lib/groupdocs_signature_cloud/models/pdf_sign_qr_code_options_data.rb +674 -0
  61. data/lib/groupdocs_signature_cloud/models/pdf_sign_stamp_options_data.rb +592 -0
  62. data/lib/groupdocs_signature_cloud/models/pdf_sign_text_options_data.rb +696 -0
  63. data/lib/groupdocs_signature_cloud/models/pdf_verify_barcode_options_data.rb +342 -0
  64. data/lib/groupdocs_signature_cloud/models/pdf_verify_digital_options_data.rb +315 -0
  65. data/lib/groupdocs_signature_cloud/models/pdf_verify_qr_code_options_data.rb +342 -0
  66. data/lib/groupdocs_signature_cloud/models/pdf_verify_text_options_data.rb +342 -0
  67. data/lib/groupdocs_signature_cloud/models/qr_code_collection.rb +232 -0
  68. data/lib/groupdocs_signature_cloud/models/qr_code_signature_data.rb +250 -0
  69. data/lib/groupdocs_signature_cloud/models/qr_code_type.rb +230 -0
  70. data/lib/groupdocs_signature_cloud/models/radial_gradient_brush_data.rb +250 -0
  71. data/lib/groupdocs_signature_cloud/models/requests/get_document_info_from_url_request.rb +55 -0
  72. data/lib/groupdocs_signature_cloud/models/requests/get_document_info_request.rb +59 -0
  73. data/lib/groupdocs_signature_cloud/models/requests/post_barcode_from_url_request.rb +59 -0
  74. data/lib/groupdocs_signature_cloud/models/requests/post_barcode_request.rb +63 -0
  75. data/lib/groupdocs_signature_cloud/models/requests/post_collection_from_url_request.rb +59 -0
  76. data/lib/groupdocs_signature_cloud/models/requests/post_collection_request.rb +63 -0
  77. data/lib/groupdocs_signature_cloud/models/requests/post_digital_from_url_request.rb +67 -0
  78. data/lib/groupdocs_signature_cloud/models/requests/post_digital_request.rb +71 -0
  79. data/lib/groupdocs_signature_cloud/models/requests/post_image_from_url_request.rb +63 -0
  80. data/lib/groupdocs_signature_cloud/models/requests/post_image_request.rb +67 -0
  81. data/lib/groupdocs_signature_cloud/models/requests/post_qr_code_from_url_request.rb +59 -0
  82. data/lib/groupdocs_signature_cloud/models/requests/post_qr_code_request.rb +63 -0
  83. data/lib/groupdocs_signature_cloud/models/requests/post_search_barcode_from_url_request.rb +59 -0
  84. data/lib/groupdocs_signature_cloud/models/requests/post_search_barcode_request.rb +63 -0
  85. data/lib/groupdocs_signature_cloud/models/requests/post_search_collection_from_url_request.rb +59 -0
  86. data/lib/groupdocs_signature_cloud/models/requests/post_search_collection_request.rb +63 -0
  87. data/lib/groupdocs_signature_cloud/models/requests/post_search_digital_from_url_request.rb +59 -0
  88. data/lib/groupdocs_signature_cloud/models/requests/post_search_digital_request.rb +63 -0
  89. data/lib/groupdocs_signature_cloud/models/requests/post_search_qr_code_from_url_request.rb +59 -0
  90. data/lib/groupdocs_signature_cloud/models/requests/post_search_qr_code_request.rb +63 -0
  91. data/lib/groupdocs_signature_cloud/models/requests/post_stamp_from_url_request.rb +59 -0
  92. data/lib/groupdocs_signature_cloud/models/requests/post_stamp_request.rb +63 -0
  93. data/lib/groupdocs_signature_cloud/models/requests/post_text_from_url_request.rb +59 -0
  94. data/lib/groupdocs_signature_cloud/models/requests/post_text_request.rb +63 -0
  95. data/lib/groupdocs_signature_cloud/models/requests/post_verification_barcode_from_url_request.rb +59 -0
  96. data/lib/groupdocs_signature_cloud/models/requests/post_verification_barcode_request.rb +63 -0
  97. data/lib/groupdocs_signature_cloud/models/requests/post_verification_collection_from_url_request.rb +59 -0
  98. data/lib/groupdocs_signature_cloud/models/requests/post_verification_collection_request.rb +63 -0
  99. data/lib/groupdocs_signature_cloud/models/requests/post_verification_digital_from_url_request.rb +63 -0
  100. data/lib/groupdocs_signature_cloud/models/requests/post_verification_digital_request.rb +67 -0
  101. data/lib/groupdocs_signature_cloud/models/requests/post_verification_qr_code_from_url_request.rb +59 -0
  102. data/lib/groupdocs_signature_cloud/models/requests/post_verification_qr_code_request.rb +63 -0
  103. data/lib/groupdocs_signature_cloud/models/requests/post_verification_text_from_url_request.rb +57 -0
  104. data/lib/groupdocs_signature_cloud/models/requests/post_verification_text_request.rb +63 -0
  105. data/lib/groupdocs_signature_cloud/models/search_barcode_options_data.rb +332 -0
  106. data/lib/groupdocs_signature_cloud/models/search_digital_options_data.rb +265 -0
  107. data/lib/groupdocs_signature_cloud/models/search_document_response.rb +305 -0
  108. data/lib/groupdocs_signature_cloud/models/search_options_collection_data.rb +232 -0
  109. data/lib/groupdocs_signature_cloud/models/search_options_data.rb +265 -0
  110. data/lib/groupdocs_signature_cloud/models/search_qr_code_options_data.rb +332 -0
  111. data/lib/groupdocs_signature_cloud/models/sign_barcode_options_data.rb +664 -0
  112. data/lib/groupdocs_signature_cloud/models/sign_digital_options_data.rb +516 -0
  113. data/lib/groupdocs_signature_cloud/models/sign_image_options_data.rb +496 -0
  114. data/lib/groupdocs_signature_cloud/models/sign_options_collection_data.rb +232 -0
  115. data/lib/groupdocs_signature_cloud/models/sign_options_data.rb +255 -0
  116. data/lib/groupdocs_signature_cloud/models/sign_qr_code_options_data.rb +674 -0
  117. data/lib/groupdocs_signature_cloud/models/sign_stamp_options_data.rb +592 -0
  118. data/lib/groupdocs_signature_cloud/models/sign_text_options_data.rb +562 -0
  119. data/lib/groupdocs_signature_cloud/models/signature_document_response.rb +290 -0
  120. data/lib/groupdocs_signature_cloud/models/signature_font_data.rb +290 -0
  121. data/lib/groupdocs_signature_cloud/models/slides_barcode_signature_data.rb +250 -0
  122. data/lib/groupdocs_signature_cloud/models/slides_qr_code_signature_data.rb +250 -0
  123. data/lib/groupdocs_signature_cloud/models/slides_search_barcode_options_data.rb +332 -0
  124. data/lib/groupdocs_signature_cloud/models/slides_search_qr_code_options_data.rb +332 -0
  125. data/lib/groupdocs_signature_cloud/models/slides_sign_barcode_options_data.rb +664 -0
  126. data/lib/groupdocs_signature_cloud/models/slides_sign_image_options_data.rb +496 -0
  127. data/lib/groupdocs_signature_cloud/models/slides_sign_qr_code_options_data.rb +674 -0
  128. data/lib/groupdocs_signature_cloud/models/slides_sign_stamp_options_data.rb +592 -0
  129. data/lib/groupdocs_signature_cloud/models/slides_sign_text_options_data.rb +670 -0
  130. data/lib/groupdocs_signature_cloud/models/slides_verify_barcode_options_data.rb +342 -0
  131. data/lib/groupdocs_signature_cloud/models/slides_verify_qr_code_options_data.rb +342 -0
  132. data/lib/groupdocs_signature_cloud/models/slides_verify_text_options_data.rb +285 -0
  133. data/lib/groupdocs_signature_cloud/models/solid_brush_data.rb +240 -0
  134. data/lib/groupdocs_signature_cloud/models/stamp_line_data.rb +377 -0
  135. data/lib/groupdocs_signature_cloud/models/texture_brush_data.rb +240 -0
  136. data/lib/groupdocs_signature_cloud/models/verified_document_response.rb +300 -0
  137. data/lib/groupdocs_signature_cloud/models/verify_barcode_options_data.rb +342 -0
  138. data/lib/groupdocs_signature_cloud/models/verify_digital_options_data.rb +285 -0
  139. data/lib/groupdocs_signature_cloud/models/verify_options_collection_data.rb +247 -0
  140. data/lib/groupdocs_signature_cloud/models/verify_options_data.rb +265 -0
  141. data/lib/groupdocs_signature_cloud/models/verify_qr_code_options_data.rb +342 -0
  142. data/lib/groupdocs_signature_cloud/models/verify_text_options_data.rb +285 -0
  143. data/lib/groupdocs_signature_cloud/models/words_barcode_signature_data.rb +250 -0
  144. data/lib/groupdocs_signature_cloud/models/words_digital_signature_data.rb +307 -0
  145. data/lib/groupdocs_signature_cloud/models/words_qr_code_signature_data.rb +250 -0
  146. data/lib/groupdocs_signature_cloud/models/words_search_barcode_options_data.rb +332 -0
  147. data/lib/groupdocs_signature_cloud/models/words_search_digital_options_data.rb +265 -0
  148. data/lib/groupdocs_signature_cloud/models/words_search_qr_code_options_data.rb +332 -0
  149. data/lib/groupdocs_signature_cloud/models/words_sign_barcode_options_data.rb +664 -0
  150. data/lib/groupdocs_signature_cloud/models/words_sign_digital_options_data.rb +516 -0
  151. data/lib/groupdocs_signature_cloud/models/words_sign_image_options_data.rb +496 -0
  152. data/lib/groupdocs_signature_cloud/models/words_sign_qr_code_options_data.rb +674 -0
  153. data/lib/groupdocs_signature_cloud/models/words_sign_stamp_options_data.rb +592 -0
  154. data/lib/groupdocs_signature_cloud/models/words_sign_text_options_data.rb +696 -0
  155. data/lib/groupdocs_signature_cloud/models/words_verify_barcode_options_data.rb +342 -0
  156. data/lib/groupdocs_signature_cloud/models/words_verify_digital_options_data.rb +315 -0
  157. data/lib/groupdocs_signature_cloud/models/words_verify_qr_code_options_data.rb +342 -0
  158. data/lib/groupdocs_signature_cloud/models/words_verify_text_options_data.rb +285 -0
  159. data/lib/groupdocs_signature_cloud/version.rb +29 -0
  160. metadata +290 -0
@@ -0,0 +1,526 @@
1
+ #
2
+ # --------------------------------------------------------------------------------------------------------------------
3
+ # <copyright company="Aspose Pty Ltd" file="cells_sign_image_options_data.rb">
4
+ # Copyright (c) 2003-2018 Aspose Pty Ltd
5
+ # </copyright>
6
+ # <summary>
7
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ # of this software and associated documentation files (the "Software"), to deal
9
+ # in the Software without restriction, including without limitation the rights
10
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ # copies of the Software, and to permit persons to whom the Software is
12
+ # furnished to do so, subject to the following conditions:
13
+ #
14
+ # The above copyright notice and this permission notice shall be included in all
15
+ # copies or substantial portions of the Software.
16
+ #
17
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ # SOFTWARE.
24
+ # </summary>
25
+ # --------------------------------------------------------------------------------------------------------------------
26
+ #
27
+
28
+ require 'date'
29
+
30
+ module GroupDocsSignatureCloud
31
+ # Represents the Image Sign Options for Cells Documents.
32
+ class CellsSignImageOptionsData
33
+
34
+ # Gets or sets worksheet number for signing. Minimal value is 1.
35
+ attr_accessor :document_page_number
36
+
37
+ # Page Options to specify pages to be verified.
38
+ attr_accessor :pages_setup
39
+
40
+ # Internal property that specify the name of Options.
41
+ attr_accessor :options_type
42
+
43
+ # Gets or sets the signature image file name. This property is used only if ImageStream is not specified.
44
+ attr_accessor :image_guid
45
+
46
+ # Gets or sets the position of the left edge of the Signature area in pixels. This property is mutually exclusive with Column property. If Left property is set ColumnNumber will be reset to 0.
47
+ attr_accessor :left
48
+
49
+ # Gets or sets the position of the top edge of the Signature area in pixels. This property is mutually exclusive with Row property. If Top property is set RowNumber will be reset to 0.
50
+ attr_accessor :top
51
+
52
+ # Width of Signature on Document Page in Measure values (pixels or percent see SizeMeasureType).
53
+ attr_accessor :width
54
+
55
+ # Height of Signature on Document Page in Measure values (pixels or percent see SizeMeasureType).
56
+ attr_accessor :height
57
+
58
+ # Measure type (pixels or percent) for Left and Top properties.
59
+ attr_accessor :location_measure_type
60
+
61
+ # Measure type (pixels or percent) for Width and Height properties.
62
+ attr_accessor :size_measure_type
63
+
64
+ # Rotation angle of signature on document page (clockwise).
65
+ attr_accessor :rotation_angle
66
+
67
+ # Horizontal alignment of signature on document page.
68
+ attr_accessor :horizontal_alignment
69
+
70
+ # Vertical alignment of signature on document page.
71
+ attr_accessor :vertical_alignment
72
+
73
+ # Gets or sets the space between Sign and worksheet edges. (works ONLY if horizontal or vertical alignment are specified).
74
+ attr_accessor :margin
75
+
76
+ # Gets or sets the measure type (pixels or percent) for Margin.
77
+ attr_accessor :margin_measure_type
78
+
79
+ # Gets or sets the additional opacity for sign image (value from 0.0 (clear) through 1.0 (opaque)). By default the value is 1.0.
80
+ attr_accessor :opacity
81
+
82
+ # Put signature on all document pages.
83
+ attr_accessor :sign_all_pages
84
+
85
+ # Gets or sets worksheet number for signing. DocumentPageNumber parameter contains the same value.
86
+ attr_accessor :sheet_number
87
+
88
+ # Gets or sets the top row number of signature (min value is 0). Top parameter contains the same value.
89
+ attr_accessor :row_number
90
+
91
+ # Gets or sets the left column number of signature (min value is 0). Left parameter contains the same value.
92
+ attr_accessor :column_number
93
+ class EnumAttributeValidator
94
+ attr_reader :datatype
95
+ attr_reader :allowable_values
96
+
97
+ def initialize(datatype, allowable_values)
98
+ @allowable_values = allowable_values.map do |value|
99
+ case datatype.to_s
100
+ when /Integer/i
101
+ value.to_i
102
+ when /Float/i
103
+ value.to_f
104
+ else
105
+ value
106
+ end
107
+ end
108
+ end
109
+
110
+ def valid?(value)
111
+ !value || allowable_values.include?(value)
112
+ end
113
+ end
114
+
115
+ # Attribute mapping from ruby-style variable name to JSON key.
116
+ def self.attribute_map
117
+ {
118
+ :'document_page_number' => :'DocumentPageNumber',
119
+ :'pages_setup' => :'PagesSetup',
120
+ :'options_type' => :'OptionsType',
121
+ :'image_guid' => :'ImageGuid',
122
+ :'left' => :'Left',
123
+ :'top' => :'Top',
124
+ :'width' => :'Width',
125
+ :'height' => :'Height',
126
+ :'location_measure_type' => :'LocationMeasureType',
127
+ :'size_measure_type' => :'SizeMeasureType',
128
+ :'rotation_angle' => :'RotationAngle',
129
+ :'horizontal_alignment' => :'HorizontalAlignment',
130
+ :'vertical_alignment' => :'VerticalAlignment',
131
+ :'margin' => :'Margin',
132
+ :'margin_measure_type' => :'MarginMeasureType',
133
+ :'opacity' => :'Opacity',
134
+ :'sign_all_pages' => :'SignAllPages',
135
+ :'sheet_number' => :'SheetNumber',
136
+ :'row_number' => :'RowNumber',
137
+ :'column_number' => :'ColumnNumber'
138
+ }
139
+ end
140
+
141
+ # Attribute type mapping.
142
+ def self.swagger_types
143
+ {
144
+ :'document_page_number' => :'Integer',
145
+ :'pages_setup' => :'PagesSetupData',
146
+ :'options_type' => :'String',
147
+ :'image_guid' => :'String',
148
+ :'left' => :'Integer',
149
+ :'top' => :'Integer',
150
+ :'width' => :'Integer',
151
+ :'height' => :'Integer',
152
+ :'location_measure_type' => :'String',
153
+ :'size_measure_type' => :'String',
154
+ :'rotation_angle' => :'Integer',
155
+ :'horizontal_alignment' => :'String',
156
+ :'vertical_alignment' => :'String',
157
+ :'margin' => :'PaddingData',
158
+ :'margin_measure_type' => :'String',
159
+ :'opacity' => :'Float',
160
+ :'sign_all_pages' => :'BOOLEAN',
161
+ :'sheet_number' => :'Integer',
162
+ :'row_number' => :'Integer',
163
+ :'column_number' => :'Integer'
164
+ }
165
+ end
166
+
167
+ # Initializes the object
168
+ # @param [Hash] attributes Model attributes in the form of hash
169
+ def initialize(attributes = {})
170
+ return unless attributes.is_a?(Hash)
171
+
172
+ # convert string to symbol for hash key
173
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
174
+
175
+ if attributes.key?(:'DocumentPageNumber')
176
+ self.document_page_number = attributes[:'DocumentPageNumber']
177
+ end
178
+
179
+ if attributes.key?(:'PagesSetup')
180
+ self.pages_setup = attributes[:'PagesSetup']
181
+ end
182
+
183
+ if attributes.key?(:'OptionsType')
184
+ self.options_type = attributes[:'OptionsType']
185
+ end
186
+
187
+ if attributes.key?(:'ImageGuid')
188
+ self.image_guid = attributes[:'ImageGuid']
189
+ end
190
+
191
+ if attributes.key?(:'Left')
192
+ self.left = attributes[:'Left']
193
+ end
194
+
195
+ if attributes.key?(:'Top')
196
+ self.top = attributes[:'Top']
197
+ end
198
+
199
+ if attributes.key?(:'Width')
200
+ self.width = attributes[:'Width']
201
+ end
202
+
203
+ if attributes.key?(:'Height')
204
+ self.height = attributes[:'Height']
205
+ end
206
+
207
+ if attributes.key?(:'LocationMeasureType')
208
+ self.location_measure_type = attributes[:'LocationMeasureType']
209
+ end
210
+
211
+ if attributes.key?(:'SizeMeasureType')
212
+ self.size_measure_type = attributes[:'SizeMeasureType']
213
+ end
214
+
215
+ if attributes.key?(:'RotationAngle')
216
+ self.rotation_angle = attributes[:'RotationAngle']
217
+ end
218
+
219
+ if attributes.key?(:'HorizontalAlignment')
220
+ self.horizontal_alignment = attributes[:'HorizontalAlignment']
221
+ end
222
+
223
+ if attributes.key?(:'VerticalAlignment')
224
+ self.vertical_alignment = attributes[:'VerticalAlignment']
225
+ end
226
+
227
+ if attributes.key?(:'Margin')
228
+ self.margin = attributes[:'Margin']
229
+ end
230
+
231
+ if attributes.key?(:'MarginMeasureType')
232
+ self.margin_measure_type = attributes[:'MarginMeasureType']
233
+ end
234
+
235
+ if attributes.key?(:'Opacity')
236
+ self.opacity = attributes[:'Opacity']
237
+ end
238
+
239
+ if attributes.key?(:'SignAllPages')
240
+ self.sign_all_pages = attributes[:'SignAllPages']
241
+ end
242
+
243
+ if attributes.key?(:'SheetNumber')
244
+ self.sheet_number = attributes[:'SheetNumber']
245
+ end
246
+
247
+ if attributes.key?(:'RowNumber')
248
+ self.row_number = attributes[:'RowNumber']
249
+ end
250
+
251
+ if attributes.key?(:'ColumnNumber')
252
+ self.column_number = attributes[:'ColumnNumber']
253
+ end
254
+
255
+
256
+ if !((defined? options_type) == nil)
257
+ self.options_type = "CellsSignImageOptionsData"
258
+ end
259
+
260
+ end
261
+
262
+ # Show invalid properties with the reasons. Usually used together with valid?
263
+ # @return Array for valid properies with the reasons
264
+ def list_invalid_properties
265
+ invalid_properties = []
266
+ if @document_page_number.nil?
267
+ invalid_properties.push("invalid value for 'document_page_number', document_page_number cannot be nil.")
268
+ end
269
+
270
+ return invalid_properties
271
+ end
272
+
273
+ # Check to see if the all the properties in the model are valid
274
+ # @return true if the model is valid
275
+ def valid?
276
+ return false if @document_page_number.nil?
277
+ location_measure_type_validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
278
+ return false unless location_measure_type_validator.valid?(@location_measure_type)
279
+ size_measure_type_validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
280
+ return false unless size_measure_type_validator.valid?(@size_measure_type)
281
+ horizontal_alignment_validator = EnumAttributeValidator.new('String', ["Default", "None", "Left", "Center", "Right"])
282
+ return false unless horizontal_alignment_validator.valid?(@horizontal_alignment)
283
+ vertical_alignment_validator = EnumAttributeValidator.new('String', ["Default", "None", "Top", "Center", "Bottom"])
284
+ return false unless vertical_alignment_validator.valid?(@vertical_alignment)
285
+ margin_measure_type_validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
286
+ return false unless margin_measure_type_validator.valid?(@margin_measure_type)
287
+ return true
288
+ end
289
+
290
+ # Custom attribute writer method checking allowed values (enum).
291
+ # @param [Object] location_measure_type Object to be assigned
292
+ def location_measure_type=(location_measure_type)
293
+ validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
294
+ if location_measure_type.to_i == 0
295
+ unless validator.valid?(location_measure_type)
296
+ raise ArgumentError, "invalid value for 'location_measure_type', must be one of #{validator.allowable_values}."
297
+ end
298
+ @location_measure_type = location_measure_type
299
+ else
300
+ @location_measure_type = validator.allowable_values[location_measure_type.to_i]
301
+ end
302
+ end
303
+
304
+ # Custom attribute writer method checking allowed values (enum).
305
+ # @param [Object] size_measure_type Object to be assigned
306
+ def size_measure_type=(size_measure_type)
307
+ validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
308
+ if size_measure_type.to_i == 0
309
+ unless validator.valid?(size_measure_type)
310
+ raise ArgumentError, "invalid value for 'size_measure_type', must be one of #{validator.allowable_values}."
311
+ end
312
+ @size_measure_type = size_measure_type
313
+ else
314
+ @size_measure_type = validator.allowable_values[size_measure_type.to_i]
315
+ end
316
+ end
317
+
318
+ # Custom attribute writer method checking allowed values (enum).
319
+ # @param [Object] horizontal_alignment Object to be assigned
320
+ def horizontal_alignment=(horizontal_alignment)
321
+ validator = EnumAttributeValidator.new('String', ["Default", "None", "Left", "Center", "Right"])
322
+ if horizontal_alignment.to_i == 0
323
+ unless validator.valid?(horizontal_alignment)
324
+ raise ArgumentError, "invalid value for 'horizontal_alignment', must be one of #{validator.allowable_values}."
325
+ end
326
+ @horizontal_alignment = horizontal_alignment
327
+ else
328
+ @horizontal_alignment = validator.allowable_values[horizontal_alignment.to_i]
329
+ end
330
+ end
331
+
332
+ # Custom attribute writer method checking allowed values (enum).
333
+ # @param [Object] vertical_alignment Object to be assigned
334
+ def vertical_alignment=(vertical_alignment)
335
+ validator = EnumAttributeValidator.new('String', ["Default", "None", "Top", "Center", "Bottom"])
336
+ if vertical_alignment.to_i == 0
337
+ unless validator.valid?(vertical_alignment)
338
+ raise ArgumentError, "invalid value for 'vertical_alignment', must be one of #{validator.allowable_values}."
339
+ end
340
+ @vertical_alignment = vertical_alignment
341
+ else
342
+ @vertical_alignment = validator.allowable_values[vertical_alignment.to_i]
343
+ end
344
+ end
345
+
346
+ # Custom attribute writer method checking allowed values (enum).
347
+ # @param [Object] margin_measure_type Object to be assigned
348
+ def margin_measure_type=(margin_measure_type)
349
+ validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
350
+ if margin_measure_type.to_i == 0
351
+ unless validator.valid?(margin_measure_type)
352
+ raise ArgumentError, "invalid value for 'margin_measure_type', must be one of #{validator.allowable_values}."
353
+ end
354
+ @margin_measure_type = margin_measure_type
355
+ else
356
+ @margin_measure_type = validator.allowable_values[margin_measure_type.to_i]
357
+ end
358
+ end
359
+
360
+ # Checks equality by comparing each attribute.
361
+ # @param [Object] Object to be compared
362
+ def ==(other)
363
+ return true if self.equal?(other)
364
+ self.class == other.class &&
365
+ document_page_number == other.document_page_number &&
366
+ pages_setup == other.pages_setup &&
367
+ options_type == other.options_type &&
368
+ image_guid == other.image_guid &&
369
+ left == other.left &&
370
+ top == other.top &&
371
+ width == other.width &&
372
+ height == other.height &&
373
+ location_measure_type == other.location_measure_type &&
374
+ size_measure_type == other.size_measure_type &&
375
+ rotation_angle == other.rotation_angle &&
376
+ horizontal_alignment == other.horizontal_alignment &&
377
+ vertical_alignment == other.vertical_alignment &&
378
+ margin == other.margin &&
379
+ margin_measure_type == other.margin_measure_type &&
380
+ opacity == other.opacity &&
381
+ sign_all_pages == other.sign_all_pages &&
382
+ sheet_number == other.sheet_number &&
383
+ row_number == other.row_number &&
384
+ column_number == other.column_number
385
+ end
386
+
387
+ # @see the `==` method
388
+ # @param [Object] Object to be compared
389
+ def eql?(other)
390
+ self == other
391
+ end
392
+
393
+ # Calculates hash code according to all attributes.
394
+ # @return [Fixnum] Hash code
395
+ def hash
396
+ [document_page_number, pages_setup, options_type, image_guid, left, top, width, height, location_measure_type, size_measure_type, rotation_angle, horizontal_alignment, vertical_alignment, margin, margin_measure_type, opacity, sign_all_pages, sheet_number, row_number, column_number].hash
397
+ end
398
+
399
+ # Builds the object from hash
400
+ # @param [Hash] attributes Model attributes in the form of hash
401
+ # @return [Object] Returns the model itself
402
+ def build_from_hash(attributes)
403
+ return nil unless attributes.is_a?(Hash)
404
+ self.class.swagger_types.each_pair do |key, type|
405
+
406
+ attributeName = self.class.attribute_map[key]
407
+ attributeNameLowerStr = attributeName.to_s
408
+ attributeNameLowerStr[0] = attributeNameLowerStr[0].downcase
409
+ attributeNameLower = attributeNameLowerStr.to_sym
410
+ attributeNameLowerStr2 = attributeName.to_s
411
+ attributeNameLowerStr2[0] = attributeNameLowerStr[0].downcase
412
+ attributeNameLowerStr2[1] = attributeNameLowerStr[1].downcase
413
+ attributeNameLower2 = attributeNameLowerStr2.to_sym
414
+
415
+ if type =~ /\AArray<(.*)>/i
416
+ # check to ensure the input is an array given that the the attribute
417
+ # is documented as an array but the input is not
418
+ if attributes[attributeName].is_a?(Array)
419
+ self.send("#{key}=", attributes[attributeName].map { |v| _deserialize($1, v) })
420
+ end
421
+ if attributes[attributeNameLower].is_a?(Array)
422
+ self.send("#{key}=", attributes[attributeNameLower].map { |v| _deserialize($1, v) })
423
+ end
424
+ if attributes[attributeNameLower2].is_a?(Array)
425
+ self.send("#{key}=", attributes[attributeNameLower2].map { |v| _deserialize($1, v) })
426
+ end
427
+ elsif !attributes[attributeName].nil?
428
+ self.send("#{key}=", _deserialize(type, attributes[attributeName]))
429
+ elsif !attributes[attributeNameLower].nil?
430
+ self.send("#{key}=", _deserialize(type, attributes[attributeNameLower]))
431
+ elsif !attributes[attributeNameLower2].nil?
432
+ self.send("#{key}=", _deserialize(type, attributes[attributeNameLower2]))
433
+ end
434
+ # or else data not found in attributes(hash), not an issue as the data can be optional
435
+ end
436
+ self
437
+ end
438
+
439
+ # Deserializes the data based on type
440
+ # @param string type Data type
441
+ # @param string value Value to be deserialized
442
+ # @return [Object] Deserialized data
443
+ def _deserialize(type, value)
444
+ case type.to_sym
445
+ when :DateTime
446
+ Time.at(/\d/.match(value)[0].to_f).to_datetime
447
+ when :Date
448
+ Time.at(/\d/.match(value)[0].to_f).to_date
449
+ when :String
450
+ value.to_s
451
+ when :Integer
452
+ value.to_i
453
+ when :Float
454
+ value.to_f
455
+ when :BOOLEAN
456
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
457
+ true
458
+ else
459
+ false
460
+ end
461
+ when :Object
462
+ # generic object (usually a Hash), return directly
463
+ value
464
+ when /\AArray<(?<inner_type>.+)>\z/
465
+ inner_type = Regexp.last_match[:inner_type]
466
+ value.map { |v| _deserialize(inner_type, v) }
467
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
468
+ k_type = Regexp.last_match[:k_type]
469
+ v_type = Regexp.last_match[:v_type]
470
+ {}.tap do |hash|
471
+ value.each do |k, v|
472
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
473
+ end
474
+ end
475
+ else
476
+ # model
477
+ temp_model = GroupDocsSignatureCloud.const_get(type).new
478
+ temp_model.build_from_hash(value)
479
+ end
480
+ end
481
+
482
+ # Returns the string representation of the object
483
+ # @return [String] String presentation of the object
484
+ def to_s
485
+ to_hash.to_s
486
+ end
487
+
488
+ # to_body is an alias to to_hash (backward compatibility)
489
+ # @return [Hash] Returns the object in the form of hash
490
+ def to_body
491
+ to_hash
492
+ end
493
+
494
+ # Returns the object in the form of hash
495
+ # @return [Hash] Returns the object in the form of hash
496
+ def to_hash
497
+ hash = {}
498
+ self.class.attribute_map.each_pair do |attr, param|
499
+ value = self.send(attr)
500
+ next if value.nil?
501
+ hash[param] = _to_hash(value)
502
+ end
503
+ hash
504
+ end
505
+
506
+ # Outputs non-array value in the form of hash
507
+ # For object, use to_hash. Otherwise, just return the value
508
+ # @param [Object] value Any valid value
509
+ # @return [Hash] Returns the value in the form of hash
510
+ def _to_hash(value)
511
+ if value.is_a?(Array)
512
+ value.compact.map { |v| _to_hash(v) }
513
+ elsif value.is_a?(Hash)
514
+ {}.tap do |hash|
515
+ value.each { |k, v| hash[k] = _to_hash(v) }
516
+ end
517
+ elsif value.respond_to? :to_hash
518
+ value.to_hash
519
+ else
520
+ value
521
+ end
522
+ end
523
+
524
+ end
525
+
526
+ end