groupdocs_signature_cloud 18.8.1 → 21.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (202) hide show
  1. checksums.yaml +5 -5
  2. data/lib/groupdocs_signature_cloud/api/file_api.rb +734 -0
  3. data/lib/groupdocs_signature_cloud/api/folder_api.rb +699 -0
  4. data/lib/groupdocs_signature_cloud/api/info_api.rb +364 -0
  5. data/lib/groupdocs_signature_cloud/api/preview_api.rb +217 -0
  6. data/lib/groupdocs_signature_cloud/api/sign_api.rb +605 -0
  7. data/lib/groupdocs_signature_cloud/api/storage_api.rb +544 -0
  8. data/lib/groupdocs_signature_cloud/api_client.rb +382 -380
  9. data/lib/groupdocs_signature_cloud/api_error.rb +71 -58
  10. data/lib/groupdocs_signature_cloud/configuration.rb +95 -110
  11. data/lib/groupdocs_signature_cloud/models/barcode_signature.rb +434 -0
  12. data/lib/groupdocs_signature_cloud/models/barcode_type.rb +237 -230
  13. data/lib/groupdocs_signature_cloud/models/{barcode_collection.rb → barcodes_result.rb} +239 -232
  14. data/lib/groupdocs_signature_cloud/models/{base_signature_data.rb → base_settings.rb} +237 -230
  15. data/lib/groupdocs_signature_cloud/models/{border_line_data.rb → border_line.rb} +334 -312
  16. data/lib/groupdocs_signature_cloud/models/{brush_data.rb → brush.rb} +237 -230
  17. data/lib/groupdocs_signature_cloud/models/checkbox_form_field_signature.rb +460 -0
  18. data/lib/groupdocs_signature_cloud/models/color.rb +237 -245
  19. data/lib/groupdocs_signature_cloud/models/combobox_form_field_signature.rb +467 -0
  20. data/lib/groupdocs_signature_cloud/models/delete_options.rb +289 -0
  21. data/lib/groupdocs_signature_cloud/models/{sign_options_data.rb → delete_result.rb} +276 -255
  22. data/lib/groupdocs_signature_cloud/models/delete_settings.rb +249 -0
  23. data/lib/groupdocs_signature_cloud/models/digital_form_field_signature.rb +460 -0
  24. data/lib/groupdocs_signature_cloud/models/digital_signature.rb +454 -0
  25. data/lib/groupdocs_signature_cloud/models/digital_signature_appearance.rb +309 -0
  26. data/lib/groupdocs_signature_cloud/models/disc_usage.rb +257 -0
  27. data/lib/groupdocs_signature_cloud/models/{cells_qr_code_signature_data.rb → error.rb} +267 -250
  28. data/lib/groupdocs_signature_cloud/models/error_details.rb +252 -0
  29. data/lib/groupdocs_signature_cloud/models/{barcode_signature_data.rb → file_info.rb} +267 -250
  30. data/lib/groupdocs_signature_cloud/models/file_version.rb +312 -0
  31. data/lib/groupdocs_signature_cloud/models/file_versions.rb +239 -0
  32. data/lib/groupdocs_signature_cloud/models/files_list.rb +239 -0
  33. data/lib/groupdocs_signature_cloud/models/files_upload_result.rb +251 -0
  34. data/lib/groupdocs_signature_cloud/models/form_field_signature.rb +445 -0
  35. data/lib/groupdocs_signature_cloud/models/format.rb +247 -240
  36. data/lib/groupdocs_signature_cloud/models/{format_collection.rb → formats_result.rb} +239 -232
  37. data/lib/groupdocs_signature_cloud/models/image_appearance.rb +339 -0
  38. data/lib/groupdocs_signature_cloud/models/image_signature.rb +429 -0
  39. data/lib/groupdocs_signature_cloud/models/info_result.rb +371 -0
  40. data/lib/groupdocs_signature_cloud/models/{cells_barcode_signature_data.rb → info_settings.rb} +252 -250
  41. data/lib/groupdocs_signature_cloud/models/{linear_gradient_brush_data.rb → linear_gradient_brush.rb} +272 -260
  42. data/lib/groupdocs_signature_cloud/models/{pages_info.rb → object_exist.rb} +257 -247
  43. data/lib/groupdocs_signature_cloud/models/{pdf_digital_signature_data.rb → options_base.rb} +314 -307
  44. data/lib/groupdocs_signature_cloud/models/{padding_data.rb → padding.rb} +302 -295
  45. data/lib/groupdocs_signature_cloud/models/page_info.rb +312 -305
  46. data/lib/groupdocs_signature_cloud/models/{pages_setup_data.rb → pages_setup.rb} +299 -292
  47. data/lib/groupdocs_signature_cloud/models/pdf_digital_signature.rb +339 -0
  48. data/lib/groupdocs_signature_cloud/models/pdf_digital_signature_appearance.rb +359 -0
  49. data/lib/groupdocs_signature_cloud/models/pdf_text_annotation_appearance.rb +395 -0
  50. data/lib/groupdocs_signature_cloud/models/{document_response.rb → pdf_text_sticker_appearance.rb} +355 -302
  51. data/lib/groupdocs_signature_cloud/models/preview_page.rb +277 -0
  52. data/lib/groupdocs_signature_cloud/models/preview_result.rb +279 -0
  53. data/lib/groupdocs_signature_cloud/models/{cells_verify_qr_code_options_data.rb → preview_settings.rb} +356 -342
  54. data/lib/groupdocs_signature_cloud/models/qr_code_signature.rb +434 -0
  55. data/lib/groupdocs_signature_cloud/models/qr_code_type.rb +237 -230
  56. data/lib/groupdocs_signature_cloud/models/{qr_code_collection.rb → qr_codes_result.rb} +239 -232
  57. data/lib/groupdocs_signature_cloud/models/{radial_gradient_brush_data.rb → radial_gradient_brush.rb} +257 -250
  58. data/lib/groupdocs_signature_cloud/models/radio_button_form_field_signature.rb +467 -0
  59. data/lib/groupdocs_signature_cloud/models/save_options.rb +262 -0
  60. data/lib/groupdocs_signature_cloud/models/{search_barcode_options_data.rb → search_barcode_options.rb} +365 -332
  61. data/lib/groupdocs_signature_cloud/models/{cells_digital_signature_data.rb → search_digital_options.rb} +314 -307
  62. data/lib/groupdocs_signature_cloud/models/{words_digital_signature_data.rb → search_options.rb} +314 -307
  63. data/lib/groupdocs_signature_cloud/models/{pdf_search_barcode_options_data.rb → search_qr_code_options.rb} +365 -332
  64. data/lib/groupdocs_signature_cloud/models/{verify_options_collection_data.rb → search_result.rb} +264 -247
  65. data/lib/groupdocs_signature_cloud/models/search_settings.rb +249 -0
  66. data/lib/groupdocs_signature_cloud/models/{pdf_sign_text_options_data.rb → sign_barcode_options.rb} +808 -696
  67. data/lib/groupdocs_signature_cloud/models/{pdf_sign_digital_options_data.rb → sign_digital_options.rb} +695 -556
  68. data/lib/groupdocs_signature_cloud/models/{sign_stamp_options_data.rb → sign_image_options.rb} +599 -592
  69. data/lib/groupdocs_signature_cloud/models/sign_options.rb +324 -0
  70. data/lib/groupdocs_signature_cloud/models/{words_sign_text_options_data.rb → sign_qr_code_options.rb} +823 -696
  71. data/lib/groupdocs_signature_cloud/models/{verify_options_data.rb → sign_result.rb} +286 -265
  72. data/lib/groupdocs_signature_cloud/models/{qr_code_signature_data.rb → sign_settings.rb} +259 -250
  73. data/lib/groupdocs_signature_cloud/models/{slides_sign_stamp_options_data.rb → sign_stamp_options.rb} +705 -592
  74. data/lib/groupdocs_signature_cloud/models/{images_sign_text_options_data.rb → sign_text_options.rb} +747 -706
  75. data/lib/groupdocs_signature_cloud/models/signature.rb +404 -0
  76. data/lib/groupdocs_signature_cloud/models/{signature_document_response.rb → signature_appearance.rb} +278 -289
  77. data/lib/groupdocs_signature_cloud/models/{signature_font_data.rb → signature_font.rb} +297 -290
  78. data/lib/groupdocs_signature_cloud/models/{solid_brush_data.rb → solid_brush.rb} +247 -240
  79. data/lib/groupdocs_signature_cloud/models/{stamp_line_data.rb → stamp_line.rb} +384 -377
  80. data/lib/groupdocs_signature_cloud/models/storage_exist.rb +242 -0
  81. data/lib/groupdocs_signature_cloud/models/{document_info.rb → storage_file.rb} +287 -300
  82. data/lib/groupdocs_signature_cloud/models/text_form_field_signature.rb +455 -0
  83. data/lib/groupdocs_signature_cloud/models/text_signature.rb +424 -0
  84. data/lib/groupdocs_signature_cloud/models/{texture_brush_data.rb → texture_brush.rb} +247 -240
  85. data/lib/groupdocs_signature_cloud/models/time_stamp.rb +257 -0
  86. data/lib/groupdocs_signature_cloud/models/update_options.rb +374 -0
  87. data/lib/groupdocs_signature_cloud/models/update_result.rb +276 -0
  88. data/lib/groupdocs_signature_cloud/models/update_settings.rb +249 -0
  89. data/lib/groupdocs_signature_cloud/models/{verify_barcode_options_data.rb → verify_barcode_options.rb} +365 -342
  90. data/lib/groupdocs_signature_cloud/models/{cells_verify_digital_options_data.rb → verify_digital_options.rb} +394 -315
  91. data/lib/groupdocs_signature_cloud/models/{digital_signature_data.rb → verify_options.rb} +314 -307
  92. data/lib/groupdocs_signature_cloud/models/{verify_qr_code_options_data.rb → verify_qr_code_options.rb} +365 -342
  93. data/lib/groupdocs_signature_cloud/models/{images_barcode_signature_data.rb → verify_result.rb} +267 -250
  94. data/lib/groupdocs_signature_cloud/models/{search_options_collection_data.rb → verify_settings.rb} +249 -232
  95. data/lib/groupdocs_signature_cloud/models/{cells_verify_barcode_options_data.rb → verify_text_options.rb} +355 -342
  96. data/lib/groupdocs_signature_cloud/version.rb +2 -2
  97. data/lib/groupdocs_signature_cloud.rb +125 -191
  98. metadata +89 -185
  99. data/lib/groupdocs_signature_cloud/api/signature_api.rb +0 -2590
  100. data/lib/groupdocs_signature_cloud/models/cells_search_barcode_options_data.rb +0 -332
  101. data/lib/groupdocs_signature_cloud/models/cells_search_digital_options_data.rb +0 -265
  102. data/lib/groupdocs_signature_cloud/models/cells_search_qr_code_options_data.rb +0 -332
  103. data/lib/groupdocs_signature_cloud/models/cells_sign_barcode_options_data.rb +0 -694
  104. data/lib/groupdocs_signature_cloud/models/cells_sign_digital_options_data.rb +0 -546
  105. data/lib/groupdocs_signature_cloud/models/cells_sign_image_options_data.rb +0 -526
  106. data/lib/groupdocs_signature_cloud/models/cells_sign_qr_code_options_data.rb +0 -704
  107. data/lib/groupdocs_signature_cloud/models/cells_sign_stamp_options_data.rb +0 -622
  108. data/lib/groupdocs_signature_cloud/models/cells_sign_text_options_data.rb +0 -736
  109. data/lib/groupdocs_signature_cloud/models/cells_verify_text_options_data.rb +0 -285
  110. data/lib/groupdocs_signature_cloud/models/images_qr_code_signature_data.rb +0 -250
  111. data/lib/groupdocs_signature_cloud/models/images_search_barcode_options_data.rb +0 -332
  112. data/lib/groupdocs_signature_cloud/models/images_search_qr_code_options_data.rb +0 -332
  113. data/lib/groupdocs_signature_cloud/models/images_sign_barcode_options_data.rb +0 -664
  114. data/lib/groupdocs_signature_cloud/models/images_sign_image_options_data.rb +0 -496
  115. data/lib/groupdocs_signature_cloud/models/images_sign_qr_code_options_data.rb +0 -674
  116. data/lib/groupdocs_signature_cloud/models/images_sign_stamp_options_data.rb +0 -592
  117. data/lib/groupdocs_signature_cloud/models/images_verify_barcode_options_data.rb +0 -342
  118. data/lib/groupdocs_signature_cloud/models/images_verify_qr_code_options_data.rb +0 -342
  119. data/lib/groupdocs_signature_cloud/models/pdf_barcode_signature_data.rb +0 -250
  120. data/lib/groupdocs_signature_cloud/models/pdf_qr_code_signature_data.rb +0 -250
  121. data/lib/groupdocs_signature_cloud/models/pdf_search_digital_options_data.rb +0 -265
  122. data/lib/groupdocs_signature_cloud/models/pdf_search_qr_code_options_data.rb +0 -332
  123. data/lib/groupdocs_signature_cloud/models/pdf_sign_barcode_options_data.rb +0 -664
  124. data/lib/groupdocs_signature_cloud/models/pdf_sign_image_options_data.rb +0 -496
  125. data/lib/groupdocs_signature_cloud/models/pdf_sign_qr_code_options_data.rb +0 -674
  126. data/lib/groupdocs_signature_cloud/models/pdf_sign_stamp_options_data.rb +0 -592
  127. data/lib/groupdocs_signature_cloud/models/pdf_verify_barcode_options_data.rb +0 -342
  128. data/lib/groupdocs_signature_cloud/models/pdf_verify_digital_options_data.rb +0 -315
  129. data/lib/groupdocs_signature_cloud/models/pdf_verify_qr_code_options_data.rb +0 -342
  130. data/lib/groupdocs_signature_cloud/models/pdf_verify_text_options_data.rb +0 -342
  131. data/lib/groupdocs_signature_cloud/models/requests/get_document_info_from_url_request.rb +0 -55
  132. data/lib/groupdocs_signature_cloud/models/requests/get_document_info_request.rb +0 -59
  133. data/lib/groupdocs_signature_cloud/models/requests/post_barcode_from_url_request.rb +0 -59
  134. data/lib/groupdocs_signature_cloud/models/requests/post_barcode_request.rb +0 -63
  135. data/lib/groupdocs_signature_cloud/models/requests/post_collection_from_url_request.rb +0 -59
  136. data/lib/groupdocs_signature_cloud/models/requests/post_collection_request.rb +0 -63
  137. data/lib/groupdocs_signature_cloud/models/requests/post_digital_from_url_request.rb +0 -67
  138. data/lib/groupdocs_signature_cloud/models/requests/post_digital_request.rb +0 -71
  139. data/lib/groupdocs_signature_cloud/models/requests/post_image_from_url_request.rb +0 -63
  140. data/lib/groupdocs_signature_cloud/models/requests/post_image_request.rb +0 -67
  141. data/lib/groupdocs_signature_cloud/models/requests/post_qr_code_from_url_request.rb +0 -59
  142. data/lib/groupdocs_signature_cloud/models/requests/post_qr_code_request.rb +0 -63
  143. data/lib/groupdocs_signature_cloud/models/requests/post_search_barcode_from_url_request.rb +0 -59
  144. data/lib/groupdocs_signature_cloud/models/requests/post_search_barcode_request.rb +0 -63
  145. data/lib/groupdocs_signature_cloud/models/requests/post_search_collection_from_url_request.rb +0 -59
  146. data/lib/groupdocs_signature_cloud/models/requests/post_search_collection_request.rb +0 -63
  147. data/lib/groupdocs_signature_cloud/models/requests/post_search_digital_from_url_request.rb +0 -59
  148. data/lib/groupdocs_signature_cloud/models/requests/post_search_digital_request.rb +0 -63
  149. data/lib/groupdocs_signature_cloud/models/requests/post_search_qr_code_from_url_request.rb +0 -59
  150. data/lib/groupdocs_signature_cloud/models/requests/post_search_qr_code_request.rb +0 -63
  151. data/lib/groupdocs_signature_cloud/models/requests/post_stamp_from_url_request.rb +0 -59
  152. data/lib/groupdocs_signature_cloud/models/requests/post_stamp_request.rb +0 -63
  153. data/lib/groupdocs_signature_cloud/models/requests/post_text_from_url_request.rb +0 -59
  154. data/lib/groupdocs_signature_cloud/models/requests/post_text_request.rb +0 -63
  155. data/lib/groupdocs_signature_cloud/models/requests/post_verification_barcode_from_url_request.rb +0 -59
  156. data/lib/groupdocs_signature_cloud/models/requests/post_verification_barcode_request.rb +0 -63
  157. data/lib/groupdocs_signature_cloud/models/requests/post_verification_collection_from_url_request.rb +0 -59
  158. data/lib/groupdocs_signature_cloud/models/requests/post_verification_collection_request.rb +0 -63
  159. data/lib/groupdocs_signature_cloud/models/requests/post_verification_digital_from_url_request.rb +0 -63
  160. data/lib/groupdocs_signature_cloud/models/requests/post_verification_digital_request.rb +0 -67
  161. data/lib/groupdocs_signature_cloud/models/requests/post_verification_qr_code_from_url_request.rb +0 -59
  162. data/lib/groupdocs_signature_cloud/models/requests/post_verification_qr_code_request.rb +0 -63
  163. data/lib/groupdocs_signature_cloud/models/requests/post_verification_text_from_url_request.rb +0 -57
  164. data/lib/groupdocs_signature_cloud/models/requests/post_verification_text_request.rb +0 -63
  165. data/lib/groupdocs_signature_cloud/models/search_digital_options_data.rb +0 -265
  166. data/lib/groupdocs_signature_cloud/models/search_document_response.rb +0 -305
  167. data/lib/groupdocs_signature_cloud/models/search_options_data.rb +0 -265
  168. data/lib/groupdocs_signature_cloud/models/search_qr_code_options_data.rb +0 -332
  169. data/lib/groupdocs_signature_cloud/models/sign_barcode_options_data.rb +0 -664
  170. data/lib/groupdocs_signature_cloud/models/sign_digital_options_data.rb +0 -516
  171. data/lib/groupdocs_signature_cloud/models/sign_image_options_data.rb +0 -496
  172. data/lib/groupdocs_signature_cloud/models/sign_options_collection_data.rb +0 -232
  173. data/lib/groupdocs_signature_cloud/models/sign_qr_code_options_data.rb +0 -674
  174. data/lib/groupdocs_signature_cloud/models/sign_text_options_data.rb +0 -562
  175. data/lib/groupdocs_signature_cloud/models/slides_barcode_signature_data.rb +0 -250
  176. data/lib/groupdocs_signature_cloud/models/slides_qr_code_signature_data.rb +0 -250
  177. data/lib/groupdocs_signature_cloud/models/slides_search_barcode_options_data.rb +0 -332
  178. data/lib/groupdocs_signature_cloud/models/slides_search_qr_code_options_data.rb +0 -332
  179. data/lib/groupdocs_signature_cloud/models/slides_sign_barcode_options_data.rb +0 -664
  180. data/lib/groupdocs_signature_cloud/models/slides_sign_image_options_data.rb +0 -496
  181. data/lib/groupdocs_signature_cloud/models/slides_sign_qr_code_options_data.rb +0 -674
  182. data/lib/groupdocs_signature_cloud/models/slides_sign_text_options_data.rb +0 -670
  183. data/lib/groupdocs_signature_cloud/models/slides_verify_barcode_options_data.rb +0 -342
  184. data/lib/groupdocs_signature_cloud/models/slides_verify_qr_code_options_data.rb +0 -342
  185. data/lib/groupdocs_signature_cloud/models/slides_verify_text_options_data.rb +0 -285
  186. data/lib/groupdocs_signature_cloud/models/verified_document_response.rb +0 -300
  187. data/lib/groupdocs_signature_cloud/models/verify_digital_options_data.rb +0 -285
  188. data/lib/groupdocs_signature_cloud/models/verify_text_options_data.rb +0 -285
  189. data/lib/groupdocs_signature_cloud/models/words_barcode_signature_data.rb +0 -250
  190. data/lib/groupdocs_signature_cloud/models/words_qr_code_signature_data.rb +0 -250
  191. data/lib/groupdocs_signature_cloud/models/words_search_barcode_options_data.rb +0 -332
  192. data/lib/groupdocs_signature_cloud/models/words_search_digital_options_data.rb +0 -265
  193. data/lib/groupdocs_signature_cloud/models/words_search_qr_code_options_data.rb +0 -332
  194. data/lib/groupdocs_signature_cloud/models/words_sign_barcode_options_data.rb +0 -664
  195. data/lib/groupdocs_signature_cloud/models/words_sign_digital_options_data.rb +0 -516
  196. data/lib/groupdocs_signature_cloud/models/words_sign_image_options_data.rb +0 -496
  197. data/lib/groupdocs_signature_cloud/models/words_sign_qr_code_options_data.rb +0 -674
  198. data/lib/groupdocs_signature_cloud/models/words_sign_stamp_options_data.rb +0 -592
  199. data/lib/groupdocs_signature_cloud/models/words_verify_barcode_options_data.rb +0 -342
  200. data/lib/groupdocs_signature_cloud/models/words_verify_digital_options_data.rb +0 -315
  201. data/lib/groupdocs_signature_cloud/models/words_verify_qr_code_options_data.rb +0 -342
  202. data/lib/groupdocs_signature_cloud/models/words_verify_text_options_data.rb +0 -285
@@ -0,0 +1,454 @@
1
+ #
2
+ # --------------------------------------------------------------------------------------------------------------------
3
+ # <copyright company="Aspose Pty Ltd" file="digital_signature.rb">
4
+ # Copyright (c) 2003-2021 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
+ # Contains digital Signature properties
32
+ class DigitalSignature
33
+
34
+ # Specifies the signature type (Text, Image, Digital, Barcode, QRCode, Stamp)
35
+ attr_accessor :signature_type
36
+
37
+ # Specifies the page signature was found on
38
+ attr_accessor :page_number
39
+
40
+ # Unique signature identifier to modify signature in the document over Update or Delete methods. This property will be set automatically after Sign or Search method being called. If this property was saved before it can be set manually to manipulate the signature.
41
+ attr_accessor :signature_id
42
+
43
+ # Get or set flag to indicate if this component is Signature or document content. This property is being used with Update method to set element as signature (true) or document element (false).
44
+ attr_accessor :is_signature
45
+
46
+ # Get or set the signature creation date
47
+ attr_accessor :created_on
48
+
49
+ # Get or set the signature modification date
50
+ attr_accessor :modified_on
51
+
52
+ # Specifies top position of signature
53
+ attr_accessor :top
54
+
55
+ # Specifies left position of signature
56
+ attr_accessor :left
57
+
58
+ # Specifies width of signature
59
+ attr_accessor :width
60
+
61
+ # Specifies height of signature
62
+ attr_accessor :height
63
+
64
+ # Gets or sets the signing purpose comment
65
+ attr_accessor :comments
66
+
67
+ # Keeps true if this digital signature is valid and the document has not been tampered with
68
+ attr_accessor :is_valid
69
+
70
+ # Gets or sets the time the document was signed
71
+ attr_accessor :sign_time
72
+
73
+ # Pdf digital signature properties
74
+ attr_accessor :pdf_digital_signature
75
+ class EnumAttributeValidator
76
+ attr_reader :datatype
77
+ attr_reader :allowable_values
78
+
79
+ def initialize(datatype, allowable_values)
80
+ @allowable_values = allowable_values.map do |value|
81
+ case datatype.to_s
82
+ when /Integer/i
83
+ value.to_i
84
+ when /Float/i
85
+ value.to_f
86
+ else
87
+ value
88
+ end
89
+ end
90
+ end
91
+
92
+ def valid?(value)
93
+ !value || allowable_values.include?(value)
94
+ end
95
+ end
96
+
97
+ # Attribute mapping from ruby-style variable name to JSON key.
98
+ def self.attribute_map
99
+ {
100
+ :'signature_type' => :'SignatureType',
101
+ :'page_number' => :'PageNumber',
102
+ :'signature_id' => :'SignatureId',
103
+ :'is_signature' => :'IsSignature',
104
+ :'created_on' => :'CreatedOn',
105
+ :'modified_on' => :'ModifiedOn',
106
+ :'top' => :'Top',
107
+ :'left' => :'Left',
108
+ :'width' => :'Width',
109
+ :'height' => :'Height',
110
+ :'comments' => :'Comments',
111
+ :'is_valid' => :'IsValid',
112
+ :'sign_time' => :'SignTime',
113
+ :'pdf_digital_signature' => :'PdfDigitalSignature'
114
+ }
115
+ end
116
+
117
+ # Attribute type mapping.
118
+ def self.swagger_types
119
+ {
120
+ :'signature_type' => :'String',
121
+ :'page_number' => :'Integer',
122
+ :'signature_id' => :'String',
123
+ :'is_signature' => :'BOOLEAN',
124
+ :'created_on' => :'DateTime',
125
+ :'modified_on' => :'DateTime',
126
+ :'top' => :'Integer',
127
+ :'left' => :'Integer',
128
+ :'width' => :'Integer',
129
+ :'height' => :'Integer',
130
+ :'comments' => :'String',
131
+ :'is_valid' => :'BOOLEAN',
132
+ :'sign_time' => :'DateTime',
133
+ :'pdf_digital_signature' => :'PdfDigitalSignature'
134
+ }
135
+ end
136
+
137
+ # Initializes the object
138
+ # @param [Hash] attributes Model attributes in the form of hash
139
+ def initialize(attributes = {})
140
+ return unless attributes.is_a?(Hash)
141
+
142
+ # convert string to symbol for hash key
143
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
144
+
145
+ if attributes.key?(:'SignatureType')
146
+ self.signature_type = attributes[:'SignatureType']
147
+ end
148
+
149
+ if attributes.key?(:'PageNumber')
150
+ self.page_number = attributes[:'PageNumber']
151
+ end
152
+
153
+ if attributes.key?(:'SignatureId')
154
+ self.signature_id = attributes[:'SignatureId']
155
+ end
156
+
157
+ if attributes.key?(:'IsSignature')
158
+ self.is_signature = attributes[:'IsSignature']
159
+ end
160
+
161
+ if attributes.key?(:'CreatedOn')
162
+ self.created_on = attributes[:'CreatedOn']
163
+ end
164
+
165
+ if attributes.key?(:'ModifiedOn')
166
+ self.modified_on = attributes[:'ModifiedOn']
167
+ end
168
+
169
+ if attributes.key?(:'Top')
170
+ self.top = attributes[:'Top']
171
+ end
172
+
173
+ if attributes.key?(:'Left')
174
+ self.left = attributes[:'Left']
175
+ end
176
+
177
+ if attributes.key?(:'Width')
178
+ self.width = attributes[:'Width']
179
+ end
180
+
181
+ if attributes.key?(:'Height')
182
+ self.height = attributes[:'Height']
183
+ end
184
+
185
+ if attributes.key?(:'Comments')
186
+ self.comments = attributes[:'Comments']
187
+ end
188
+
189
+ if attributes.key?(:'IsValid')
190
+ self.is_valid = attributes[:'IsValid']
191
+ end
192
+
193
+ if attributes.key?(:'SignTime')
194
+ self.sign_time = attributes[:'SignTime']
195
+ end
196
+
197
+ if attributes.key?(:'PdfDigitalSignature')
198
+ self.pdf_digital_signature = attributes[:'PdfDigitalSignature']
199
+ end
200
+
201
+ end
202
+
203
+ # Show invalid properties with the reasons. Usually used together with valid?
204
+ # @return Array for valid properies with the reasons
205
+ def list_invalid_properties
206
+ invalid_properties = []
207
+ if @signature_type.nil?
208
+ invalid_properties.push("invalid value for 'signature_type', signature_type cannot be nil.")
209
+ end
210
+
211
+ if @is_signature.nil?
212
+ invalid_properties.push("invalid value for 'is_signature', is_signature cannot be nil.")
213
+ end
214
+
215
+ if @created_on.nil?
216
+ invalid_properties.push("invalid value for 'created_on', created_on cannot be nil.")
217
+ end
218
+
219
+ if @modified_on.nil?
220
+ invalid_properties.push("invalid value for 'modified_on', modified_on cannot be nil.")
221
+ end
222
+
223
+ if @top.nil?
224
+ invalid_properties.push("invalid value for 'top', top cannot be nil.")
225
+ end
226
+
227
+ if @left.nil?
228
+ invalid_properties.push("invalid value for 'left', left cannot be nil.")
229
+ end
230
+
231
+ if @width.nil?
232
+ invalid_properties.push("invalid value for 'width', width cannot be nil.")
233
+ end
234
+
235
+ if @height.nil?
236
+ invalid_properties.push("invalid value for 'height', height cannot be nil.")
237
+ end
238
+
239
+ if @is_valid.nil?
240
+ invalid_properties.push("invalid value for 'is_valid', is_valid cannot be nil.")
241
+ end
242
+
243
+ if @sign_time.nil?
244
+ invalid_properties.push("invalid value for 'sign_time', sign_time cannot be nil.")
245
+ end
246
+
247
+ return invalid_properties
248
+ end
249
+
250
+ # Check to see if the all the properties in the model are valid
251
+ # @return true if the model is valid
252
+ def valid?
253
+ return false if @signature_type.nil?
254
+ signature_type_validator = EnumAttributeValidator.new('String', ["None", "Text", "Image", "Digital", "Barcode", "QRCode", "Stamp", "FormField", "Metadata"])
255
+ return false unless signature_type_validator.valid?(@signature_type)
256
+ return false if @is_signature.nil?
257
+ return false if @created_on.nil?
258
+ return false if @modified_on.nil?
259
+ return false if @top.nil?
260
+ return false if @left.nil?
261
+ return false if @width.nil?
262
+ return false if @height.nil?
263
+ return false if @is_valid.nil?
264
+ return false if @sign_time.nil?
265
+ return true
266
+ end
267
+
268
+ # Custom attribute writer method checking allowed values (enum).
269
+ # @param [Object] signature_type Object to be assigned
270
+ def signature_type=(signature_type)
271
+ validator = EnumAttributeValidator.new('String', ["None", "Text", "Image", "Digital", "Barcode", "QRCode", "Stamp", "FormField", "Metadata"])
272
+ if signature_type.to_i == 0
273
+ unless validator.valid?(signature_type)
274
+ raise ArgumentError, "invalid value for 'signature_type', must be one of #{validator.allowable_values}."
275
+ end
276
+ @signature_type = signature_type
277
+ else
278
+ @signature_type = validator.allowable_values[signature_type.to_i]
279
+ end
280
+ end
281
+
282
+ # Checks equality by comparing each attribute.
283
+ # @param [Object] Object to be compared
284
+ def ==(other)
285
+ return true if self.equal?(other)
286
+ self.class == other.class &&
287
+ signature_type == other.signature_type &&
288
+ page_number == other.page_number &&
289
+ signature_id == other.signature_id &&
290
+ is_signature == other.is_signature &&
291
+ created_on == other.created_on &&
292
+ modified_on == other.modified_on &&
293
+ top == other.top &&
294
+ left == other.left &&
295
+ width == other.width &&
296
+ height == other.height &&
297
+ comments == other.comments &&
298
+ is_valid == other.is_valid &&
299
+ sign_time == other.sign_time &&
300
+ pdf_digital_signature == other.pdf_digital_signature
301
+ end
302
+
303
+ # @see the `==` method
304
+ # @param [Object] Object to be compared
305
+ def eql?(other)
306
+ self == other
307
+ end
308
+
309
+ # Calculates hash code according to all attributes.
310
+ # @return [Fixnum] Hash code
311
+ def hash
312
+ [signature_type, page_number, signature_id, is_signature, created_on, modified_on, top, left, width, height, comments, is_valid, sign_time, pdf_digital_signature].hash
313
+ end
314
+
315
+ # Downcases first letter.
316
+ # @return downcased string
317
+ def uncap(str)
318
+ str[0, 1].downcase + str[1..-1]
319
+ end
320
+
321
+ # Builds the object from hash
322
+ # @param [Hash] attributes Model attributes in the form of hash
323
+ # @return [Object] Returns the model itself
324
+ def build_from_hash(attributes)
325
+ return nil unless attributes.is_a?(Hash)
326
+ self.class.swagger_types.each_pair do |key, type|
327
+ pname = uncap(self.class.attribute_map[key]).intern
328
+ value = attributes[pname]
329
+ if type =~ /\AArray<(.*)>/i
330
+ # check to ensure the input is an array given that the the attribute
331
+ # is documented as an array but the input is not
332
+ if value.is_a?(Array)
333
+ self.send("#{key}=", value.map { |v| _deserialize($1, v) })
334
+ end
335
+ elsif !value.nil?
336
+ self.send("#{key}=", _deserialize(type, value))
337
+ end
338
+ # or else data not found in attributes(hash), not an issue as the data can be optional
339
+ end
340
+
341
+ self
342
+ end
343
+
344
+ # Deserializes the data based on type
345
+ # @param string type Data type
346
+ # @param string value Value to be deserialized
347
+ # @return [Object] Deserialized data
348
+ def _deserialize(type, value)
349
+ case type.to_sym
350
+ when :DateTime
351
+ Date.parse value
352
+ when :Date
353
+ Date.parse value
354
+ when :String
355
+ value.to_s
356
+ when :Integer
357
+ value.to_i
358
+ when :Float
359
+ value.to_f
360
+ when :BOOLEAN
361
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
362
+ true
363
+ else
364
+ false
365
+ end
366
+ when :Object
367
+ # generic object (usually a Hash), return directly
368
+ value
369
+ when /\AArray<(?<inner_type>.+)>\z/
370
+ inner_type = Regexp.last_match[:inner_type]
371
+ value.map { |v| _deserialize(inner_type, v) }
372
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
373
+ k_type = Regexp.last_match[:k_type]
374
+ v_type = Regexp.last_match[:v_type]
375
+ {}.tap do |hash|
376
+ value.each do |k, v|
377
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
378
+ end
379
+ end
380
+ else
381
+ # model
382
+ # Signature type fix
383
+ ttype = type
384
+ if value.is_a?(Hash) and !value[:signatureType].nil?
385
+ ttype = value[:signatureType] + 'Signature'
386
+ if value[:signatureType] == 'FormField' and !value[:type].nil?
387
+ type = value[:type]
388
+ if type == 'Checkbox'
389
+ ttype = 'CheckboxFormFieldSignature'
390
+ end
391
+ if type == 'Text'
392
+ ttype = 'TextFormFieldSignature'
393
+ end
394
+ if type == 'Combobox'
395
+ ttype = 'ComboboxFormFieldSignature'
396
+ end
397
+ if type == 'DigitalSignature'
398
+ ttype = 'DigitalFormFieldSignature'
399
+ end
400
+ if type == 'Radio'
401
+ ttype = 'RadioButtonFormFieldSignature'
402
+ end
403
+ end
404
+ end
405
+ temp_model = GroupDocsSignatureCloud.const_get(ttype).new
406
+ temp_model.build_from_hash(value)
407
+ end
408
+ end
409
+
410
+ # Returns the string representation of the object
411
+ # @return [String] String presentation of the object
412
+ def to_s
413
+ to_hash.to_s
414
+ end
415
+
416
+ # to_body is an alias to to_hash (backward compatibility)
417
+ # @return [Hash] Returns the object in the form of hash
418
+ def to_body
419
+ to_hash
420
+ end
421
+
422
+ # Returns the object in the form of hash
423
+ # @return [Hash] Returns the object in the form of hash
424
+ def to_hash
425
+ hash = {}
426
+ self.class.attribute_map.each_pair do |attr, param|
427
+ value = self.send(attr)
428
+ next if value.nil?
429
+ hash[param] = _to_hash(value)
430
+ end
431
+ hash
432
+ end
433
+
434
+ # Outputs non-array value in the form of hash
435
+ # For object, use to_hash. Otherwise, just return the value
436
+ # @param [Object] value Any valid value
437
+ # @return [Hash] Returns the value in the form of hash
438
+ def _to_hash(value)
439
+ if value.is_a?(Array)
440
+ value.compact.map { |v| _to_hash(v) }
441
+ elsif value.is_a?(Hash)
442
+ {}.tap do |hash|
443
+ value.each { |k, v| hash[k] = _to_hash(v) }
444
+ end
445
+ elsif value.respond_to? :to_hash
446
+ value.to_hash
447
+ else
448
+ value
449
+ end
450
+ end
451
+
452
+ end
453
+
454
+ end