groupdocs_signature_cloud 18.8.1

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 (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,496 @@
1
+ #
2
+ # --------------------------------------------------------------------------------------------------------------------
3
+ # <copyright company="Aspose Pty Ltd" file="images_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 Images Documents.
32
+ class ImagesSignImageOptionsData
33
+
34
+ # Gets or sets document page number for signing. This property can only be used for multi-frames image formats (Tiff). Minimal value is 1.
35
+ attr_accessor :document_page_number
36
+
37
+ # Options to specify pages to be signed. This property can only be used for multi-frames image formats (Tiff).
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
+ # Left X position of Signature on Document Page in Measure values (pixels or percent see LocationMeasureType). (works if horizontal alignment is not specified).
47
+ attr_accessor :left
48
+
49
+ # Top Y Position of Signature on Document Page in Measure values (pixels or percent see LocationMeasureType). (works if vertical alignment is not specified).
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 Document 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. This property can only be used for multi-frames image formats (Tiff).
83
+ attr_accessor :sign_all_pages
84
+ class EnumAttributeValidator
85
+ attr_reader :datatype
86
+ attr_reader :allowable_values
87
+
88
+ def initialize(datatype, allowable_values)
89
+ @allowable_values = allowable_values.map do |value|
90
+ case datatype.to_s
91
+ when /Integer/i
92
+ value.to_i
93
+ when /Float/i
94
+ value.to_f
95
+ else
96
+ value
97
+ end
98
+ end
99
+ end
100
+
101
+ def valid?(value)
102
+ !value || allowable_values.include?(value)
103
+ end
104
+ end
105
+
106
+ # Attribute mapping from ruby-style variable name to JSON key.
107
+ def self.attribute_map
108
+ {
109
+ :'document_page_number' => :'DocumentPageNumber',
110
+ :'pages_setup' => :'PagesSetup',
111
+ :'options_type' => :'OptionsType',
112
+ :'image_guid' => :'ImageGuid',
113
+ :'left' => :'Left',
114
+ :'top' => :'Top',
115
+ :'width' => :'Width',
116
+ :'height' => :'Height',
117
+ :'location_measure_type' => :'LocationMeasureType',
118
+ :'size_measure_type' => :'SizeMeasureType',
119
+ :'rotation_angle' => :'RotationAngle',
120
+ :'horizontal_alignment' => :'HorizontalAlignment',
121
+ :'vertical_alignment' => :'VerticalAlignment',
122
+ :'margin' => :'Margin',
123
+ :'margin_measure_type' => :'MarginMeasureType',
124
+ :'opacity' => :'Opacity',
125
+ :'sign_all_pages' => :'SignAllPages'
126
+ }
127
+ end
128
+
129
+ # Attribute type mapping.
130
+ def self.swagger_types
131
+ {
132
+ :'document_page_number' => :'Integer',
133
+ :'pages_setup' => :'PagesSetupData',
134
+ :'options_type' => :'String',
135
+ :'image_guid' => :'String',
136
+ :'left' => :'Integer',
137
+ :'top' => :'Integer',
138
+ :'width' => :'Integer',
139
+ :'height' => :'Integer',
140
+ :'location_measure_type' => :'String',
141
+ :'size_measure_type' => :'String',
142
+ :'rotation_angle' => :'Integer',
143
+ :'horizontal_alignment' => :'String',
144
+ :'vertical_alignment' => :'String',
145
+ :'margin' => :'PaddingData',
146
+ :'margin_measure_type' => :'String',
147
+ :'opacity' => :'Float',
148
+ :'sign_all_pages' => :'BOOLEAN'
149
+ }
150
+ end
151
+
152
+ # Initializes the object
153
+ # @param [Hash] attributes Model attributes in the form of hash
154
+ def initialize(attributes = {})
155
+ return unless attributes.is_a?(Hash)
156
+
157
+ # convert string to symbol for hash key
158
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
159
+
160
+ if attributes.key?(:'DocumentPageNumber')
161
+ self.document_page_number = attributes[:'DocumentPageNumber']
162
+ end
163
+
164
+ if attributes.key?(:'PagesSetup')
165
+ self.pages_setup = attributes[:'PagesSetup']
166
+ end
167
+
168
+ if attributes.key?(:'OptionsType')
169
+ self.options_type = attributes[:'OptionsType']
170
+ end
171
+
172
+ if attributes.key?(:'ImageGuid')
173
+ self.image_guid = attributes[:'ImageGuid']
174
+ end
175
+
176
+ if attributes.key?(:'Left')
177
+ self.left = attributes[:'Left']
178
+ end
179
+
180
+ if attributes.key?(:'Top')
181
+ self.top = attributes[:'Top']
182
+ end
183
+
184
+ if attributes.key?(:'Width')
185
+ self.width = attributes[:'Width']
186
+ end
187
+
188
+ if attributes.key?(:'Height')
189
+ self.height = attributes[:'Height']
190
+ end
191
+
192
+ if attributes.key?(:'LocationMeasureType')
193
+ self.location_measure_type = attributes[:'LocationMeasureType']
194
+ end
195
+
196
+ if attributes.key?(:'SizeMeasureType')
197
+ self.size_measure_type = attributes[:'SizeMeasureType']
198
+ end
199
+
200
+ if attributes.key?(:'RotationAngle')
201
+ self.rotation_angle = attributes[:'RotationAngle']
202
+ end
203
+
204
+ if attributes.key?(:'HorizontalAlignment')
205
+ self.horizontal_alignment = attributes[:'HorizontalAlignment']
206
+ end
207
+
208
+ if attributes.key?(:'VerticalAlignment')
209
+ self.vertical_alignment = attributes[:'VerticalAlignment']
210
+ end
211
+
212
+ if attributes.key?(:'Margin')
213
+ self.margin = attributes[:'Margin']
214
+ end
215
+
216
+ if attributes.key?(:'MarginMeasureType')
217
+ self.margin_measure_type = attributes[:'MarginMeasureType']
218
+ end
219
+
220
+ if attributes.key?(:'Opacity')
221
+ self.opacity = attributes[:'Opacity']
222
+ end
223
+
224
+ if attributes.key?(:'SignAllPages')
225
+ self.sign_all_pages = attributes[:'SignAllPages']
226
+ end
227
+
228
+
229
+ if !((defined? options_type) == nil)
230
+ self.options_type = "ImagesSignImageOptionsData"
231
+ end
232
+
233
+ end
234
+
235
+ # Show invalid properties with the reasons. Usually used together with valid?
236
+ # @return Array for valid properies with the reasons
237
+ def list_invalid_properties
238
+ invalid_properties = []
239
+ if @document_page_number.nil?
240
+ invalid_properties.push("invalid value for 'document_page_number', document_page_number cannot be nil.")
241
+ end
242
+
243
+ return invalid_properties
244
+ end
245
+
246
+ # Check to see if the all the properties in the model are valid
247
+ # @return true if the model is valid
248
+ def valid?
249
+ return false if @document_page_number.nil?
250
+ location_measure_type_validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
251
+ return false unless location_measure_type_validator.valid?(@location_measure_type)
252
+ size_measure_type_validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
253
+ return false unless size_measure_type_validator.valid?(@size_measure_type)
254
+ horizontal_alignment_validator = EnumAttributeValidator.new('String', ["Default", "None", "Left", "Center", "Right"])
255
+ return false unless horizontal_alignment_validator.valid?(@horizontal_alignment)
256
+ vertical_alignment_validator = EnumAttributeValidator.new('String', ["Default", "None", "Top", "Center", "Bottom"])
257
+ return false unless vertical_alignment_validator.valid?(@vertical_alignment)
258
+ margin_measure_type_validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
259
+ return false unless margin_measure_type_validator.valid?(@margin_measure_type)
260
+ return true
261
+ end
262
+
263
+ # Custom attribute writer method checking allowed values (enum).
264
+ # @param [Object] location_measure_type Object to be assigned
265
+ def location_measure_type=(location_measure_type)
266
+ validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
267
+ if location_measure_type.to_i == 0
268
+ unless validator.valid?(location_measure_type)
269
+ raise ArgumentError, "invalid value for 'location_measure_type', must be one of #{validator.allowable_values}."
270
+ end
271
+ @location_measure_type = location_measure_type
272
+ else
273
+ @location_measure_type = validator.allowable_values[location_measure_type.to_i]
274
+ end
275
+ end
276
+
277
+ # Custom attribute writer method checking allowed values (enum).
278
+ # @param [Object] size_measure_type Object to be assigned
279
+ def size_measure_type=(size_measure_type)
280
+ validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
281
+ if size_measure_type.to_i == 0
282
+ unless validator.valid?(size_measure_type)
283
+ raise ArgumentError, "invalid value for 'size_measure_type', must be one of #{validator.allowable_values}."
284
+ end
285
+ @size_measure_type = size_measure_type
286
+ else
287
+ @size_measure_type = validator.allowable_values[size_measure_type.to_i]
288
+ end
289
+ end
290
+
291
+ # Custom attribute writer method checking allowed values (enum).
292
+ # @param [Object] horizontal_alignment Object to be assigned
293
+ def horizontal_alignment=(horizontal_alignment)
294
+ validator = EnumAttributeValidator.new('String', ["Default", "None", "Left", "Center", "Right"])
295
+ if horizontal_alignment.to_i == 0
296
+ unless validator.valid?(horizontal_alignment)
297
+ raise ArgumentError, "invalid value for 'horizontal_alignment', must be one of #{validator.allowable_values}."
298
+ end
299
+ @horizontal_alignment = horizontal_alignment
300
+ else
301
+ @horizontal_alignment = validator.allowable_values[horizontal_alignment.to_i]
302
+ end
303
+ end
304
+
305
+ # Custom attribute writer method checking allowed values (enum).
306
+ # @param [Object] vertical_alignment Object to be assigned
307
+ def vertical_alignment=(vertical_alignment)
308
+ validator = EnumAttributeValidator.new('String', ["Default", "None", "Top", "Center", "Bottom"])
309
+ if vertical_alignment.to_i == 0
310
+ unless validator.valid?(vertical_alignment)
311
+ raise ArgumentError, "invalid value for 'vertical_alignment', must be one of #{validator.allowable_values}."
312
+ end
313
+ @vertical_alignment = vertical_alignment
314
+ else
315
+ @vertical_alignment = validator.allowable_values[vertical_alignment.to_i]
316
+ end
317
+ end
318
+
319
+ # Custom attribute writer method checking allowed values (enum).
320
+ # @param [Object] margin_measure_type Object to be assigned
321
+ def margin_measure_type=(margin_measure_type)
322
+ validator = EnumAttributeValidator.new('String', ["Pixels", "Percents", "Millimeters"])
323
+ if margin_measure_type.to_i == 0
324
+ unless validator.valid?(margin_measure_type)
325
+ raise ArgumentError, "invalid value for 'margin_measure_type', must be one of #{validator.allowable_values}."
326
+ end
327
+ @margin_measure_type = margin_measure_type
328
+ else
329
+ @margin_measure_type = validator.allowable_values[margin_measure_type.to_i]
330
+ end
331
+ end
332
+
333
+ # Checks equality by comparing each attribute.
334
+ # @param [Object] Object to be compared
335
+ def ==(other)
336
+ return true if self.equal?(other)
337
+ self.class == other.class &&
338
+ document_page_number == other.document_page_number &&
339
+ pages_setup == other.pages_setup &&
340
+ options_type == other.options_type &&
341
+ image_guid == other.image_guid &&
342
+ left == other.left &&
343
+ top == other.top &&
344
+ width == other.width &&
345
+ height == other.height &&
346
+ location_measure_type == other.location_measure_type &&
347
+ size_measure_type == other.size_measure_type &&
348
+ rotation_angle == other.rotation_angle &&
349
+ horizontal_alignment == other.horizontal_alignment &&
350
+ vertical_alignment == other.vertical_alignment &&
351
+ margin == other.margin &&
352
+ margin_measure_type == other.margin_measure_type &&
353
+ opacity == other.opacity &&
354
+ sign_all_pages == other.sign_all_pages
355
+ end
356
+
357
+ # @see the `==` method
358
+ # @param [Object] Object to be compared
359
+ def eql?(other)
360
+ self == other
361
+ end
362
+
363
+ # Calculates hash code according to all attributes.
364
+ # @return [Fixnum] Hash code
365
+ def hash
366
+ [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].hash
367
+ end
368
+
369
+ # Builds the object from hash
370
+ # @param [Hash] attributes Model attributes in the form of hash
371
+ # @return [Object] Returns the model itself
372
+ def build_from_hash(attributes)
373
+ return nil unless attributes.is_a?(Hash)
374
+ self.class.swagger_types.each_pair do |key, type|
375
+
376
+ attributeName = self.class.attribute_map[key]
377
+ attributeNameLowerStr = attributeName.to_s
378
+ attributeNameLowerStr[0] = attributeNameLowerStr[0].downcase
379
+ attributeNameLower = attributeNameLowerStr.to_sym
380
+ attributeNameLowerStr2 = attributeName.to_s
381
+ attributeNameLowerStr2[0] = attributeNameLowerStr[0].downcase
382
+ attributeNameLowerStr2[1] = attributeNameLowerStr[1].downcase
383
+ attributeNameLower2 = attributeNameLowerStr2.to_sym
384
+
385
+ if type =~ /\AArray<(.*)>/i
386
+ # check to ensure the input is an array given that the the attribute
387
+ # is documented as an array but the input is not
388
+ if attributes[attributeName].is_a?(Array)
389
+ self.send("#{key}=", attributes[attributeName].map { |v| _deserialize($1, v) })
390
+ end
391
+ if attributes[attributeNameLower].is_a?(Array)
392
+ self.send("#{key}=", attributes[attributeNameLower].map { |v| _deserialize($1, v) })
393
+ end
394
+ if attributes[attributeNameLower2].is_a?(Array)
395
+ self.send("#{key}=", attributes[attributeNameLower2].map { |v| _deserialize($1, v) })
396
+ end
397
+ elsif !attributes[attributeName].nil?
398
+ self.send("#{key}=", _deserialize(type, attributes[attributeName]))
399
+ elsif !attributes[attributeNameLower].nil?
400
+ self.send("#{key}=", _deserialize(type, attributes[attributeNameLower]))
401
+ elsif !attributes[attributeNameLower2].nil?
402
+ self.send("#{key}=", _deserialize(type, attributes[attributeNameLower2]))
403
+ end
404
+ # or else data not found in attributes(hash), not an issue as the data can be optional
405
+ end
406
+ self
407
+ end
408
+
409
+ # Deserializes the data based on type
410
+ # @param string type Data type
411
+ # @param string value Value to be deserialized
412
+ # @return [Object] Deserialized data
413
+ def _deserialize(type, value)
414
+ case type.to_sym
415
+ when :DateTime
416
+ Time.at(/\d/.match(value)[0].to_f).to_datetime
417
+ when :Date
418
+ Time.at(/\d/.match(value)[0].to_f).to_date
419
+ when :String
420
+ value.to_s
421
+ when :Integer
422
+ value.to_i
423
+ when :Float
424
+ value.to_f
425
+ when :BOOLEAN
426
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
427
+ true
428
+ else
429
+ false
430
+ end
431
+ when :Object
432
+ # generic object (usually a Hash), return directly
433
+ value
434
+ when /\AArray<(?<inner_type>.+)>\z/
435
+ inner_type = Regexp.last_match[:inner_type]
436
+ value.map { |v| _deserialize(inner_type, v) }
437
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
438
+ k_type = Regexp.last_match[:k_type]
439
+ v_type = Regexp.last_match[:v_type]
440
+ {}.tap do |hash|
441
+ value.each do |k, v|
442
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
443
+ end
444
+ end
445
+ else
446
+ # model
447
+ temp_model = GroupDocsSignatureCloud.const_get(type).new
448
+ temp_model.build_from_hash(value)
449
+ end
450
+ end
451
+
452
+ # Returns the string representation of the object
453
+ # @return [String] String presentation of the object
454
+ def to_s
455
+ to_hash.to_s
456
+ end
457
+
458
+ # to_body is an alias to to_hash (backward compatibility)
459
+ # @return [Hash] Returns the object in the form of hash
460
+ def to_body
461
+ to_hash
462
+ end
463
+
464
+ # Returns the object in the form of hash
465
+ # @return [Hash] Returns the object in the form of hash
466
+ def to_hash
467
+ hash = {}
468
+ self.class.attribute_map.each_pair do |attr, param|
469
+ value = self.send(attr)
470
+ next if value.nil?
471
+ hash[param] = _to_hash(value)
472
+ end
473
+ hash
474
+ end
475
+
476
+ # Outputs non-array value in the form of hash
477
+ # For object, use to_hash. Otherwise, just return the value
478
+ # @param [Object] value Any valid value
479
+ # @return [Hash] Returns the value in the form of hash
480
+ def _to_hash(value)
481
+ if value.is_a?(Array)
482
+ value.compact.map { |v| _to_hash(v) }
483
+ elsif value.is_a?(Hash)
484
+ {}.tap do |hash|
485
+ value.each { |k, v| hash[k] = _to_hash(v) }
486
+ end
487
+ elsif value.respond_to? :to_hash
488
+ value.to_hash
489
+ else
490
+ value
491
+ end
492
+ end
493
+
494
+ end
495
+
496
+ end