docusign_esign 3.4.0.rc1 → 3.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1 -1
  3. data/Gemfile.lock +73 -0
  4. data/README.md +7 -5
  5. data/docusign_esign-2.6.0.gem +0 -0
  6. data/docusign_esign-2.6.0.rc1.gem +0 -0
  7. data/docusign_esign-2.7.0.rc1.gem +0 -0
  8. data/docusign_esign-3.5.0.gem +0 -0
  9. data/docusign_esign-3.5.0.rc1.gem +0 -0
  10. data/docusign_esign-3.6.0.rc1.gem +0 -0
  11. data/lib/docusign_esign.rb +34 -0
  12. data/lib/docusign_esign/.DS_Store +0 -0
  13. data/lib/docusign_esign/api/.DS_Store +0 -0
  14. data/lib/docusign_esign/api/accounts_api.rb +949 -35
  15. data/lib/docusign_esign/api/bulk_envelopes_api.rb +126 -4
  16. data/lib/docusign_esign/api/envelopes_api.rb +376 -2
  17. data/lib/docusign_esign/client/.DS_Store +0 -0
  18. data/lib/docusign_esign/models/account_settings_information.rb +30 -1
  19. data/lib/docusign_esign/models/account_signature.rb +497 -0
  20. data/lib/docusign_esign/models/account_signature_definition.rb +338 -0
  21. data/lib/docusign_esign/models/account_signatures_information.rb +187 -0
  22. data/lib/docusign_esign/models/bulk_send_batch_status.rb +287 -0
  23. data/lib/docusign_esign/models/bulk_send_batch_summaries.rb +277 -0
  24. data/lib/docusign_esign/models/bulk_send_batch_summary.rb +255 -0
  25. data/lib/docusign_esign/models/bulk_send_error_status.rb +207 -0
  26. data/lib/docusign_esign/models/conditional_recipient_rule.rb +216 -0
  27. data/lib/docusign_esign/models/conditional_recipient_rule_condition.rb +207 -0
  28. data/lib/docusign_esign/models/conditional_recipient_rule_filter.rb +235 -0
  29. data/lib/docusign_esign/models/correct_view_request.rb +14 -4
  30. data/lib/docusign_esign/models/e_note_configuration.rb +11 -1
  31. data/lib/docusign_esign/models/envelope.rb +13 -4
  32. data/lib/docusign_esign/models/envelope_definition.rb +13 -4
  33. data/lib/docusign_esign/models/envelope_template.rb +13 -4
  34. data/lib/docusign_esign/models/in_person_signer.rb +11 -1
  35. data/lib/docusign_esign/models/new_user.rb +11 -1
  36. data/lib/docusign_esign/models/notary_certificate.rb +869 -0
  37. data/lib/docusign_esign/models/notary_recipient.rb +1097 -0
  38. data/lib/docusign_esign/models/notary_seal.rb +983 -0
  39. data/lib/docusign_esign/models/proof_service_resource_token.rb +14 -4
  40. data/lib/docusign_esign/models/recipient_additional_notification.rb +14 -4
  41. data/lib/docusign_esign/models/recipient_group.rb +207 -0
  42. data/lib/docusign_esign/models/recipient_option.rb +225 -0
  43. data/lib/docusign_esign/models/recipient_routing.rb +184 -0
  44. data/lib/docusign_esign/models/recipient_rules.rb +187 -0
  45. data/lib/docusign_esign/models/recipients.rb +13 -1
  46. data/lib/docusign_esign/models/report_in_product_csv_run_request.rb +437 -0
  47. data/lib/docusign_esign/models/report_in_product_field.rb +215 -0
  48. data/lib/docusign_esign/models/report_in_product_get.rb +466 -0
  49. data/lib/docusign_esign/models/report_in_product_list.rb +187 -0
  50. data/lib/docusign_esign/models/report_in_product_list_item.rb +315 -0
  51. data/lib/docusign_esign/models/report_in_product_run_request.rb +397 -0
  52. data/lib/docusign_esign/models/report_in_product_run_response.rb +247 -0
  53. data/lib/docusign_esign/models/report_in_product_run_response_row.rb +194 -0
  54. data/lib/docusign_esign/models/report_in_product_run_response_row_fields.rb +1395 -0
  55. data/lib/docusign_esign/models/report_in_product_save_response.rb +185 -0
  56. data/lib/docusign_esign/models/report_in_product_sent_by_details.rb +199 -0
  57. data/lib/docusign_esign/models/sender_email_notifications.rb +11 -1
  58. data/lib/docusign_esign/models/signature_group.rb +205 -0
  59. data/lib/docusign_esign/models/signature_group_def.rb +195 -0
  60. data/lib/docusign_esign/models/signature_user.rb +215 -0
  61. data/lib/docusign_esign/models/signature_user_def.rb +205 -0
  62. data/lib/docusign_esign/models/signer.rb +11 -1
  63. data/lib/docusign_esign/models/tab_metadata.rb +21 -1
  64. data/lib/docusign_esign/models/tabs.rb +25 -1
  65. data/lib/docusign_esign/models/template_recipients.rb +13 -1
  66. data/lib/docusign_esign/models/template_tabs.rb +25 -1
  67. data/lib/docusign_esign/models/user_account_management_granular_information.rb +20 -1
  68. data/lib/docusign_esign/models/witness.rb +11 -1
  69. data/lib/docusign_esign/models/workflow.rb +207 -0
  70. data/lib/docusign_esign/models/workflow_step.rb +254 -0
  71. data/lib/docusign_esign/version.rb +1 -1
  72. data/tests/Gemfile.lock +3 -3
  73. metadata +48 -5
  74. data/docusign_esign-2.4.0.gem +0 -0
@@ -0,0 +1,215 @@
1
+ =begin
2
+ #DocuSign REST API
3
+
4
+ #The DocuSign REST API provides you with a powerful, convenient, and simple Web services API for interacting with DocuSign.
5
+
6
+ OpenAPI spec version: v2.1
7
+ Contact: devcenter@docusign.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.13-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module DocuSign_eSign
16
+ class ReportInProductField
17
+ #
18
+ attr_accessor :display_order
19
+
20
+ #
21
+ attr_accessor :field_version
22
+
23
+ #
24
+ attr_accessor :name
25
+
26
+ #
27
+ attr_accessor :selected
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ def self.attribute_map
31
+ {
32
+ :'display_order' => :'displayOrder',
33
+ :'field_version' => :'fieldVersion',
34
+ :'name' => :'name',
35
+ :'selected' => :'selected'
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.swagger_types
41
+ {
42
+ :'display_order' => :'String',
43
+ :'field_version' => :'String',
44
+ :'name' => :'String',
45
+ :'selected' => :'String'
46
+ }
47
+ end
48
+
49
+ # Initializes the object
50
+ # @param [Hash] attributes Model attributes in the form of hash
51
+ def initialize(attributes = {})
52
+ return unless attributes.is_a?(Hash)
53
+
54
+ # convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
56
+
57
+ if attributes.has_key?(:'displayOrder')
58
+ self.display_order = attributes[:'displayOrder']
59
+ end
60
+
61
+ if attributes.has_key?(:'fieldVersion')
62
+ self.field_version = attributes[:'fieldVersion']
63
+ end
64
+
65
+ if attributes.has_key?(:'name')
66
+ self.name = attributes[:'name']
67
+ end
68
+
69
+ if attributes.has_key?(:'selected')
70
+ self.selected = attributes[:'selected']
71
+ end
72
+ end
73
+
74
+ # Show invalid properties with the reasons. Usually used together with valid?
75
+ # @return Array for valid properties with the reasons
76
+ def list_invalid_properties
77
+ invalid_properties = Array.new
78
+ invalid_properties
79
+ end
80
+
81
+ # Check to see if the all the properties in the model are valid
82
+ # @return true if the model is valid
83
+ def valid?
84
+ true
85
+ end
86
+
87
+ # Checks equality by comparing each attribute.
88
+ # @param [Object] Object to be compared
89
+ def ==(o)
90
+ return true if self.equal?(o)
91
+ self.class == o.class &&
92
+ display_order == o.display_order &&
93
+ field_version == o.field_version &&
94
+ name == o.name &&
95
+ selected == o.selected
96
+ end
97
+
98
+ # @see the `==` method
99
+ # @param [Object] Object to be compared
100
+ def eql?(o)
101
+ self == o
102
+ end
103
+
104
+ # Calculates hash code according to all attributes.
105
+ # @return [Fixnum] Hash code
106
+ def hash
107
+ [display_order, field_version, name, selected].hash
108
+ end
109
+
110
+ # Builds the object from hash
111
+ # @param [Hash] attributes Model attributes in the form of hash
112
+ # @return [Object] Returns the model itself
113
+ def build_from_hash(attributes)
114
+ return nil unless attributes.is_a?(Hash)
115
+ self.class.swagger_types.each_pair do |key, type|
116
+ if type =~ /\AArray<(.*)>/i
117
+ # check to ensure the input is an array given that the attribute
118
+ # is documented as an array but the input is not
119
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
120
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
121
+ end
122
+ elsif !attributes[self.class.attribute_map[key]].nil?
123
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
124
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
125
+ end
126
+
127
+ self
128
+ end
129
+
130
+ # Deserializes the data based on type
131
+ # @param string type Data type
132
+ # @param string value Value to be deserialized
133
+ # @return [Object] Deserialized data
134
+ def _deserialize(type, value)
135
+ case type.to_sym
136
+ when :DateTime
137
+ DateTime.parse(value)
138
+ when :Date
139
+ Date.parse(value)
140
+ when :String
141
+ value.to_s
142
+ when :Integer
143
+ value.to_i
144
+ when :Float
145
+ value.to_f
146
+ when :BOOLEAN
147
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
148
+ true
149
+ else
150
+ false
151
+ end
152
+ when :Object
153
+ # generic object (usually a Hash), return directly
154
+ value
155
+ when /\AArray<(?<inner_type>.+)>\z/
156
+ inner_type = Regexp.last_match[:inner_type]
157
+ value.map { |v| _deserialize(inner_type, v) }
158
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
159
+ k_type = Regexp.last_match[:k_type]
160
+ v_type = Regexp.last_match[:v_type]
161
+ {}.tap do |hash|
162
+ value.each do |k, v|
163
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
164
+ end
165
+ end
166
+ else # model
167
+ temp_model = DocuSign_eSign.const_get(type).new
168
+ temp_model.build_from_hash(value)
169
+ end
170
+ end
171
+
172
+ # Returns the string representation of the object
173
+ # @return [String] String presentation of the object
174
+ def to_s
175
+ to_hash.to_s
176
+ end
177
+
178
+ # to_body is an alias to to_hash (backward compatibility)
179
+ # @return [Hash] Returns the object in the form of hash
180
+ def to_body
181
+ to_hash
182
+ end
183
+
184
+ # Returns the object in the form of hash
185
+ # @return [Hash] Returns the object in the form of hash
186
+ def to_hash
187
+ hash = {}
188
+ self.class.attribute_map.each_pair do |attr, param|
189
+ value = self.send(attr)
190
+ next if value.nil?
191
+ hash[param] = _to_hash(value)
192
+ end
193
+ hash
194
+ end
195
+
196
+ # Outputs non-array value in the form of hash
197
+ # For object, use to_hash. Otherwise, just return the value
198
+ # @param [Object] value Any valid value
199
+ # @return [Hash] Returns the value in the form of hash
200
+ def _to_hash(value)
201
+ if value.is_a?(Array)
202
+ value.compact.map { |v| _to_hash(v) }
203
+ elsif value.is_a?(Hash)
204
+ {}.tap do |hash|
205
+ value.each { |k, v| hash[k] = _to_hash(v) }
206
+ end
207
+ elsif value.respond_to? :to_hash
208
+ value.to_hash
209
+ else
210
+ value
211
+ end
212
+ end
213
+
214
+ end
215
+ end
@@ -0,0 +1,466 @@
1
+ =begin
2
+ #DocuSign REST API
3
+
4
+ #The DocuSign REST API provides you with a powerful, convenient, and simple Web services API for interacting with DocuSign.
5
+
6
+ OpenAPI spec version: v2.1
7
+ Contact: devcenter@docusign.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.13-SNAPSHOT
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module DocuSign_eSign
16
+ class ReportInProductGet
17
+ #
18
+ attr_accessor :custom_field_filter
19
+
20
+ #
21
+ attr_accessor :date_range_custom_from_date
22
+
23
+ #
24
+ attr_accessor :date_range_custom_to_date
25
+
26
+ #
27
+ attr_accessor :date_range_filter
28
+
29
+ #
30
+ attr_accessor :display_order
31
+
32
+ #
33
+ attr_accessor :envelope_date_type_filter
34
+
35
+ #
36
+ attr_accessor :envelope_recipient_name_contains_filter
37
+
38
+ #
39
+ attr_accessor :envelope_status_filter
40
+
41
+ #
42
+ attr_accessor :envelope_subject_contains_filter
43
+
44
+ #
45
+ attr_accessor :fields
46
+
47
+ #
48
+ attr_accessor :last_scheduled_execution_date
49
+
50
+ #
51
+ attr_accessor :last_scheduled_execution_success_date
52
+
53
+ #
54
+ attr_accessor :max_download_rows
55
+
56
+ #
57
+ attr_accessor :max_grid_rows
58
+
59
+ #
60
+ attr_accessor :max_scheduled_rows
61
+
62
+ #
63
+ attr_accessor :period_length_filter
64
+
65
+ #
66
+ attr_accessor :report_customized_id
67
+
68
+ #
69
+ attr_accessor :report_description
70
+
71
+ #
72
+ attr_accessor :report_id
73
+
74
+ #
75
+ attr_accessor :report_name
76
+
77
+ #
78
+ attr_accessor :report_type
79
+
80
+ #
81
+ attr_accessor :run_uri
82
+
83
+ #
84
+ attr_accessor :save_uri
85
+
86
+ #
87
+ attr_accessor :schedule_id
88
+
89
+ attr_accessor :sent_by_details
90
+
91
+ #
92
+ attr_accessor :sent_by_filter
93
+
94
+ #
95
+ attr_accessor :sent_by_ids
96
+
97
+ #
98
+ attr_accessor :sort_field_direction
99
+
100
+ #
101
+ attr_accessor :sort_field_name
102
+
103
+ # Attribute mapping from ruby-style variable name to JSON key.
104
+ def self.attribute_map
105
+ {
106
+ :'custom_field_filter' => :'customFieldFilter',
107
+ :'date_range_custom_from_date' => :'dateRangeCustomFromDate',
108
+ :'date_range_custom_to_date' => :'dateRangeCustomToDate',
109
+ :'date_range_filter' => :'dateRangeFilter',
110
+ :'display_order' => :'displayOrder',
111
+ :'envelope_date_type_filter' => :'envelopeDateTypeFilter',
112
+ :'envelope_recipient_name_contains_filter' => :'envelopeRecipientNameContainsFilter',
113
+ :'envelope_status_filter' => :'envelopeStatusFilter',
114
+ :'envelope_subject_contains_filter' => :'envelopeSubjectContainsFilter',
115
+ :'fields' => :'fields',
116
+ :'last_scheduled_execution_date' => :'lastScheduledExecutionDate',
117
+ :'last_scheduled_execution_success_date' => :'lastScheduledExecutionSuccessDate',
118
+ :'max_download_rows' => :'maxDownloadRows',
119
+ :'max_grid_rows' => :'maxGridRows',
120
+ :'max_scheduled_rows' => :'maxScheduledRows',
121
+ :'period_length_filter' => :'periodLengthFilter',
122
+ :'report_customized_id' => :'reportCustomizedId',
123
+ :'report_description' => :'reportDescription',
124
+ :'report_id' => :'reportId',
125
+ :'report_name' => :'reportName',
126
+ :'report_type' => :'reportType',
127
+ :'run_uri' => :'runUri',
128
+ :'save_uri' => :'saveUri',
129
+ :'schedule_id' => :'scheduleId',
130
+ :'sent_by_details' => :'sentByDetails',
131
+ :'sent_by_filter' => :'sentByFilter',
132
+ :'sent_by_ids' => :'sentByIds',
133
+ :'sort_field_direction' => :'sortFieldDirection',
134
+ :'sort_field_name' => :'sortFieldName'
135
+ }
136
+ end
137
+
138
+ # Attribute type mapping.
139
+ def self.swagger_types
140
+ {
141
+ :'custom_field_filter' => :'String',
142
+ :'date_range_custom_from_date' => :'String',
143
+ :'date_range_custom_to_date' => :'String',
144
+ :'date_range_filter' => :'String',
145
+ :'display_order' => :'String',
146
+ :'envelope_date_type_filter' => :'String',
147
+ :'envelope_recipient_name_contains_filter' => :'String',
148
+ :'envelope_status_filter' => :'String',
149
+ :'envelope_subject_contains_filter' => :'String',
150
+ :'fields' => :'Array<ReportInProductField>',
151
+ :'last_scheduled_execution_date' => :'String',
152
+ :'last_scheduled_execution_success_date' => :'String',
153
+ :'max_download_rows' => :'String',
154
+ :'max_grid_rows' => :'String',
155
+ :'max_scheduled_rows' => :'String',
156
+ :'period_length_filter' => :'String',
157
+ :'report_customized_id' => :'String',
158
+ :'report_description' => :'String',
159
+ :'report_id' => :'String',
160
+ :'report_name' => :'String',
161
+ :'report_type' => :'String',
162
+ :'run_uri' => :'String',
163
+ :'save_uri' => :'String',
164
+ :'schedule_id' => :'String',
165
+ :'sent_by_details' => :'ReportInProductSentByDetails',
166
+ :'sent_by_filter' => :'String',
167
+ :'sent_by_ids' => :'String',
168
+ :'sort_field_direction' => :'String',
169
+ :'sort_field_name' => :'String'
170
+ }
171
+ end
172
+
173
+ # Initializes the object
174
+ # @param [Hash] attributes Model attributes in the form of hash
175
+ def initialize(attributes = {})
176
+ return unless attributes.is_a?(Hash)
177
+
178
+ # convert string to symbol for hash key
179
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
180
+
181
+ if attributes.has_key?(:'customFieldFilter')
182
+ self.custom_field_filter = attributes[:'customFieldFilter']
183
+ end
184
+
185
+ if attributes.has_key?(:'dateRangeCustomFromDate')
186
+ self.date_range_custom_from_date = attributes[:'dateRangeCustomFromDate']
187
+ end
188
+
189
+ if attributes.has_key?(:'dateRangeCustomToDate')
190
+ self.date_range_custom_to_date = attributes[:'dateRangeCustomToDate']
191
+ end
192
+
193
+ if attributes.has_key?(:'dateRangeFilter')
194
+ self.date_range_filter = attributes[:'dateRangeFilter']
195
+ end
196
+
197
+ if attributes.has_key?(:'displayOrder')
198
+ self.display_order = attributes[:'displayOrder']
199
+ end
200
+
201
+ if attributes.has_key?(:'envelopeDateTypeFilter')
202
+ self.envelope_date_type_filter = attributes[:'envelopeDateTypeFilter']
203
+ end
204
+
205
+ if attributes.has_key?(:'envelopeRecipientNameContainsFilter')
206
+ self.envelope_recipient_name_contains_filter = attributes[:'envelopeRecipientNameContainsFilter']
207
+ end
208
+
209
+ if attributes.has_key?(:'envelopeStatusFilter')
210
+ self.envelope_status_filter = attributes[:'envelopeStatusFilter']
211
+ end
212
+
213
+ if attributes.has_key?(:'envelopeSubjectContainsFilter')
214
+ self.envelope_subject_contains_filter = attributes[:'envelopeSubjectContainsFilter']
215
+ end
216
+
217
+ if attributes.has_key?(:'fields')
218
+ if (value = attributes[:'fields']).is_a?(Array)
219
+ self.fields = value
220
+ end
221
+ end
222
+
223
+ if attributes.has_key?(:'lastScheduledExecutionDate')
224
+ self.last_scheduled_execution_date = attributes[:'lastScheduledExecutionDate']
225
+ end
226
+
227
+ if attributes.has_key?(:'lastScheduledExecutionSuccessDate')
228
+ self.last_scheduled_execution_success_date = attributes[:'lastScheduledExecutionSuccessDate']
229
+ end
230
+
231
+ if attributes.has_key?(:'maxDownloadRows')
232
+ self.max_download_rows = attributes[:'maxDownloadRows']
233
+ end
234
+
235
+ if attributes.has_key?(:'maxGridRows')
236
+ self.max_grid_rows = attributes[:'maxGridRows']
237
+ end
238
+
239
+ if attributes.has_key?(:'maxScheduledRows')
240
+ self.max_scheduled_rows = attributes[:'maxScheduledRows']
241
+ end
242
+
243
+ if attributes.has_key?(:'periodLengthFilter')
244
+ self.period_length_filter = attributes[:'periodLengthFilter']
245
+ end
246
+
247
+ if attributes.has_key?(:'reportCustomizedId')
248
+ self.report_customized_id = attributes[:'reportCustomizedId']
249
+ end
250
+
251
+ if attributes.has_key?(:'reportDescription')
252
+ self.report_description = attributes[:'reportDescription']
253
+ end
254
+
255
+ if attributes.has_key?(:'reportId')
256
+ self.report_id = attributes[:'reportId']
257
+ end
258
+
259
+ if attributes.has_key?(:'reportName')
260
+ self.report_name = attributes[:'reportName']
261
+ end
262
+
263
+ if attributes.has_key?(:'reportType')
264
+ self.report_type = attributes[:'reportType']
265
+ end
266
+
267
+ if attributes.has_key?(:'runUri')
268
+ self.run_uri = attributes[:'runUri']
269
+ end
270
+
271
+ if attributes.has_key?(:'saveUri')
272
+ self.save_uri = attributes[:'saveUri']
273
+ end
274
+
275
+ if attributes.has_key?(:'scheduleId')
276
+ self.schedule_id = attributes[:'scheduleId']
277
+ end
278
+
279
+ if attributes.has_key?(:'sentByDetails')
280
+ self.sent_by_details = attributes[:'sentByDetails']
281
+ end
282
+
283
+ if attributes.has_key?(:'sentByFilter')
284
+ self.sent_by_filter = attributes[:'sentByFilter']
285
+ end
286
+
287
+ if attributes.has_key?(:'sentByIds')
288
+ self.sent_by_ids = attributes[:'sentByIds']
289
+ end
290
+
291
+ if attributes.has_key?(:'sortFieldDirection')
292
+ self.sort_field_direction = attributes[:'sortFieldDirection']
293
+ end
294
+
295
+ if attributes.has_key?(:'sortFieldName')
296
+ self.sort_field_name = attributes[:'sortFieldName']
297
+ end
298
+ end
299
+
300
+ # Show invalid properties with the reasons. Usually used together with valid?
301
+ # @return Array for valid properties with the reasons
302
+ def list_invalid_properties
303
+ invalid_properties = Array.new
304
+ invalid_properties
305
+ end
306
+
307
+ # Check to see if the all the properties in the model are valid
308
+ # @return true if the model is valid
309
+ def valid?
310
+ true
311
+ end
312
+
313
+ # Checks equality by comparing each attribute.
314
+ # @param [Object] Object to be compared
315
+ def ==(o)
316
+ return true if self.equal?(o)
317
+ self.class == o.class &&
318
+ custom_field_filter == o.custom_field_filter &&
319
+ date_range_custom_from_date == o.date_range_custom_from_date &&
320
+ date_range_custom_to_date == o.date_range_custom_to_date &&
321
+ date_range_filter == o.date_range_filter &&
322
+ display_order == o.display_order &&
323
+ envelope_date_type_filter == o.envelope_date_type_filter &&
324
+ envelope_recipient_name_contains_filter == o.envelope_recipient_name_contains_filter &&
325
+ envelope_status_filter == o.envelope_status_filter &&
326
+ envelope_subject_contains_filter == o.envelope_subject_contains_filter &&
327
+ fields == o.fields &&
328
+ last_scheduled_execution_date == o.last_scheduled_execution_date &&
329
+ last_scheduled_execution_success_date == o.last_scheduled_execution_success_date &&
330
+ max_download_rows == o.max_download_rows &&
331
+ max_grid_rows == o.max_grid_rows &&
332
+ max_scheduled_rows == o.max_scheduled_rows &&
333
+ period_length_filter == o.period_length_filter &&
334
+ report_customized_id == o.report_customized_id &&
335
+ report_description == o.report_description &&
336
+ report_id == o.report_id &&
337
+ report_name == o.report_name &&
338
+ report_type == o.report_type &&
339
+ run_uri == o.run_uri &&
340
+ save_uri == o.save_uri &&
341
+ schedule_id == o.schedule_id &&
342
+ sent_by_details == o.sent_by_details &&
343
+ sent_by_filter == o.sent_by_filter &&
344
+ sent_by_ids == o.sent_by_ids &&
345
+ sort_field_direction == o.sort_field_direction &&
346
+ sort_field_name == o.sort_field_name
347
+ end
348
+
349
+ # @see the `==` method
350
+ # @param [Object] Object to be compared
351
+ def eql?(o)
352
+ self == o
353
+ end
354
+
355
+ # Calculates hash code according to all attributes.
356
+ # @return [Fixnum] Hash code
357
+ def hash
358
+ [custom_field_filter, date_range_custom_from_date, date_range_custom_to_date, date_range_filter, display_order, envelope_date_type_filter, envelope_recipient_name_contains_filter, envelope_status_filter, envelope_subject_contains_filter, fields, last_scheduled_execution_date, last_scheduled_execution_success_date, max_download_rows, max_grid_rows, max_scheduled_rows, period_length_filter, report_customized_id, report_description, report_id, report_name, report_type, run_uri, save_uri, schedule_id, sent_by_details, sent_by_filter, sent_by_ids, sort_field_direction, sort_field_name].hash
359
+ end
360
+
361
+ # Builds the object from hash
362
+ # @param [Hash] attributes Model attributes in the form of hash
363
+ # @return [Object] Returns the model itself
364
+ def build_from_hash(attributes)
365
+ return nil unless attributes.is_a?(Hash)
366
+ self.class.swagger_types.each_pair do |key, type|
367
+ if type =~ /\AArray<(.*)>/i
368
+ # check to ensure the input is an array given that the attribute
369
+ # is documented as an array but the input is not
370
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
371
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
372
+ end
373
+ elsif !attributes[self.class.attribute_map[key]].nil?
374
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
375
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
376
+ end
377
+
378
+ self
379
+ end
380
+
381
+ # Deserializes the data based on type
382
+ # @param string type Data type
383
+ # @param string value Value to be deserialized
384
+ # @return [Object] Deserialized data
385
+ def _deserialize(type, value)
386
+ case type.to_sym
387
+ when :DateTime
388
+ DateTime.parse(value)
389
+ when :Date
390
+ Date.parse(value)
391
+ when :String
392
+ value.to_s
393
+ when :Integer
394
+ value.to_i
395
+ when :Float
396
+ value.to_f
397
+ when :BOOLEAN
398
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
399
+ true
400
+ else
401
+ false
402
+ end
403
+ when :Object
404
+ # generic object (usually a Hash), return directly
405
+ value
406
+ when /\AArray<(?<inner_type>.+)>\z/
407
+ inner_type = Regexp.last_match[:inner_type]
408
+ value.map { |v| _deserialize(inner_type, v) }
409
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
410
+ k_type = Regexp.last_match[:k_type]
411
+ v_type = Regexp.last_match[:v_type]
412
+ {}.tap do |hash|
413
+ value.each do |k, v|
414
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
415
+ end
416
+ end
417
+ else # model
418
+ temp_model = DocuSign_eSign.const_get(type).new
419
+ temp_model.build_from_hash(value)
420
+ end
421
+ end
422
+
423
+ # Returns the string representation of the object
424
+ # @return [String] String presentation of the object
425
+ def to_s
426
+ to_hash.to_s
427
+ end
428
+
429
+ # to_body is an alias to to_hash (backward compatibility)
430
+ # @return [Hash] Returns the object in the form of hash
431
+ def to_body
432
+ to_hash
433
+ end
434
+
435
+ # Returns the object in the form of hash
436
+ # @return [Hash] Returns the object in the form of hash
437
+ def to_hash
438
+ hash = {}
439
+ self.class.attribute_map.each_pair do |attr, param|
440
+ value = self.send(attr)
441
+ next if value.nil?
442
+ hash[param] = _to_hash(value)
443
+ end
444
+ hash
445
+ end
446
+
447
+ # Outputs non-array value in the form of hash
448
+ # For object, use to_hash. Otherwise, just return the value
449
+ # @param [Object] value Any valid value
450
+ # @return [Hash] Returns the value in the form of hash
451
+ def _to_hash(value)
452
+ if value.is_a?(Array)
453
+ value.compact.map { |v| _to_hash(v) }
454
+ elsif value.is_a?(Hash)
455
+ {}.tap do |hash|
456
+ value.each { |k, v| hash[k] = _to_hash(v) }
457
+ end
458
+ elsif value.respond_to? :to_hash
459
+ value.to_hash
460
+ else
461
+ value
462
+ end
463
+ end
464
+
465
+ end
466
+ end