files.com 1.1.786 → 1.1.787

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 (130) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/_VERSION +1 -1
  4. data/lib/files.com/api.rb +20 -5
  5. data/lib/files.com/api_client.rb +196 -17
  6. data/lib/files.com/list.rb +4 -2
  7. data/lib/files.com/models/action_log.rb +4 -1
  8. data/lib/files.com/models/action_notification_export.rb +3 -1
  9. data/lib/files.com/models/action_notification_export_result.rb +4 -1
  10. data/lib/files.com/models/ai_assistant_personality.rb +20 -7
  11. data/lib/files.com/models/ai_task.rb +22 -10
  12. data/lib/files.com/models/api_key.rb +15 -7
  13. data/lib/files.com/models/api_request_log.rb +4 -1
  14. data/lib/files.com/models/app.rb +4 -1
  15. data/lib/files.com/models/as2_incoming_message.rb +4 -1
  16. data/lib/files.com/models/as2_outgoing_message.rb +4 -1
  17. data/lib/files.com/models/as2_partner.rb +18 -7
  18. data/lib/files.com/models/as2_station.rb +14 -7
  19. data/lib/files.com/models/automation.rb +47 -13
  20. data/lib/files.com/models/automation_log.rb +4 -1
  21. data/lib/files.com/models/automation_run.rb +16 -9
  22. data/lib/files.com/models/bandwidth_snapshot.rb +4 -1
  23. data/lib/files.com/models/behavior.rb +27 -9
  24. data/lib/files.com/models/bundle.rb +57 -10
  25. data/lib/files.com/models/bundle_action.rb +4 -1
  26. data/lib/files.com/models/bundle_download.rb +4 -1
  27. data/lib/files.com/models/bundle_notification.rb +20 -7
  28. data/lib/files.com/models/bundle_recipient.rb +6 -1
  29. data/lib/files.com/models/bundle_registration.rb +4 -1
  30. data/lib/files.com/models/chat_session.rb +5 -2
  31. data/lib/files.com/models/child_site_management_policy.rb +18 -7
  32. data/lib/files.com/models/clickwrap.rb +14 -7
  33. data/lib/files.com/models/custom_domain.rb +18 -8
  34. data/lib/files.com/models/desktop_configuration_profile.rb +21 -7
  35. data/lib/files.com/models/dns_record.rb +4 -1
  36. data/lib/files.com/models/email_incoming_message.rb +4 -1
  37. data/lib/files.com/models/email_log.rb +4 -1
  38. data/lib/files.com/models/event_channel.rb +20 -7
  39. data/lib/files.com/models/event_delivery_attempt.rb +5 -2
  40. data/lib/files.com/models/event_record.rb +5 -2
  41. data/lib/files.com/models/event_subscription.rb +25 -7
  42. data/lib/files.com/models/event_target.rb +22 -7
  43. data/lib/files.com/models/exavault_api_request_log.rb +4 -1
  44. data/lib/files.com/models/expectation.rb +23 -10
  45. data/lib/files.com/models/expectation_evaluation.rb +5 -2
  46. data/lib/files.com/models/expectation_incident.rb +20 -11
  47. data/lib/files.com/models/external_event.rb +6 -2
  48. data/lib/files.com/models/file.rb +110 -37
  49. data/lib/files.com/models/file_comment.rb +14 -7
  50. data/lib/files.com/models/file_comment_reaction.rb +6 -3
  51. data/lib/files.com/models/file_migration.rb +1 -1
  52. data/lib/files.com/models/file_migration_log.rb +4 -1
  53. data/lib/files.com/models/folder.rb +11 -3
  54. data/lib/files.com/models/form_field_set.rb +26 -7
  55. data/lib/files.com/models/ftp_action_log.rb +4 -1
  56. data/lib/files.com/models/gpg_key.rb +15 -7
  57. data/lib/files.com/models/group.rb +30 -7
  58. data/lib/files.com/models/group_user.rb +16 -6
  59. data/lib/files.com/models/history.rb +23 -8
  60. data/lib/files.com/models/history_export.rb +2 -1
  61. data/lib/files.com/models/history_export_result.rb +4 -1
  62. data/lib/files.com/models/holiday_calendar.rb +15 -7
  63. data/lib/files.com/models/holiday_region.rb +4 -1
  64. data/lib/files.com/models/inbound_s3_log.rb +4 -1
  65. data/lib/files.com/models/inbox_recipient.rb +6 -1
  66. data/lib/files.com/models/inbox_registration.rb +4 -1
  67. data/lib/files.com/models/inbox_upload.rb +4 -1
  68. data/lib/files.com/models/integration_centric_profile.rb +17 -7
  69. data/lib/files.com/models/invoice.rb +5 -2
  70. data/lib/files.com/models/ip_address.rb +16 -4
  71. data/lib/files.com/models/key_lifecycle_rule.rb +17 -7
  72. data/lib/files.com/models/lock.rb +16 -6
  73. data/lib/files.com/models/metadata_category.rb +19 -9
  74. data/lib/files.com/models/notification.rb +39 -7
  75. data/lib/files.com/models/outbound_connection_log.rb +4 -1
  76. data/lib/files.com/models/partner.rb +32 -7
  77. data/lib/files.com/models/partner_channel.rb +17 -7
  78. data/lib/files.com/models/partner_channel_template.rb +17 -7
  79. data/lib/files.com/models/partner_site.rb +5 -3
  80. data/lib/files.com/models/partner_site_request.rb +10 -4
  81. data/lib/files.com/models/payment.rb +5 -2
  82. data/lib/files.com/models/pending_work_event.rb +5 -2
  83. data/lib/files.com/models/permission.rb +12 -4
  84. data/lib/files.com/models/public_hosting_request_log.rb +4 -1
  85. data/lib/files.com/models/public_key.rb +15 -7
  86. data/lib/files.com/models/remote_bandwidth_snapshot.rb +4 -1
  87. data/lib/files.com/models/remote_mount_backend.rb +25 -10
  88. data/lib/files.com/models/remote_server.rb +46 -14
  89. data/lib/files.com/models/remote_server_credential.rb +14 -7
  90. data/lib/files.com/models/request.rb +17 -6
  91. data/lib/files.com/models/restore.rb +8 -1
  92. data/lib/files.com/models/schedule.rb +14 -7
  93. data/lib/files.com/models/scheduled_export.rb +18 -7
  94. data/lib/files.com/models/scim_log.rb +5 -2
  95. data/lib/files.com/models/secret.rb +15 -7
  96. data/lib/files.com/models/session.rb +1 -0
  97. data/lib/files.com/models/settings_change.rb +4 -1
  98. data/lib/files.com/models/sftp_action_log.rb +4 -1
  99. data/lib/files.com/models/sftp_host_key.rb +17 -7
  100. data/lib/files.com/models/share_group.rb +14 -7
  101. data/lib/files.com/models/siem_http_destination.rb +67 -7
  102. data/lib/files.com/models/siem_http_destination_event.rb +5 -2
  103. data/lib/files.com/models/site.rb +109 -0
  104. data/lib/files.com/models/site_subdomain_redirect.rb +10 -5
  105. data/lib/files.com/models/snapshot.rb +19 -10
  106. data/lib/files.com/models/sso_event.rb +5 -2
  107. data/lib/files.com/models/sso_strategy.rb +10 -5
  108. data/lib/files.com/models/style.rb +9 -6
  109. data/lib/files.com/models/sync.rb +36 -13
  110. data/lib/files.com/models/sync_log.rb +4 -1
  111. data/lib/files.com/models/sync_run.rb +5 -2
  112. data/lib/files.com/models/usage_daily_snapshot.rb +4 -1
  113. data/lib/files.com/models/usage_snapshot.rb +4 -1
  114. data/lib/files.com/models/user.rb +124 -16
  115. data/lib/files.com/models/user_additional_email_recipient.rb +14 -7
  116. data/lib/files.com/models/user_cipher_use.rb +4 -1
  117. data/lib/files.com/models/user_lifecycle_rule.rb +26 -7
  118. data/lib/files.com/models/user_request.rb +11 -5
  119. data/lib/files.com/models/user_security_event.rb +5 -2
  120. data/lib/files.com/models/user_sftp_client_use.rb +4 -1
  121. data/lib/files.com/models/web_dav_action_log.rb +4 -1
  122. data/lib/files.com/models/webhook_test.rb +3 -0
  123. data/lib/files.com/models/workspace.rb +14 -7
  124. data/lib/files.com/util.rb +32 -1
  125. data/lib/files.com.rb +54 -1
  126. data/spec/lib/api_client_spec.rb +483 -0
  127. data/spec/list_spec.rb +31 -2
  128. data/spec/models/persistence_spec.rb +1 -1
  129. data/spec/models/user_spec.rb +20 -0
  130. metadata +2 -1
@@ -266,13 +266,15 @@ module Files
266
266
 
267
267
  # Manually open an Expectation window
268
268
  def trigger_evaluation(params = {})
269
- params ||= {}
269
+ params = (params || {}).dup
270
270
  params[:id] = @attributes[:id]
271
271
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
272
272
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
273
273
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
274
274
 
275
- Api.send_request("/expectations/#{@attributes[:id]}/trigger_evaluation", :post, params, @options)
275
+ response, options = Api.send_request("/expectations/#{@attributes[:id]}/trigger_evaluation", :post, params, @options)
276
+ @options = @options.merge(options)
277
+ [ response, options ]
276
278
  end
277
279
 
278
280
  # Parameters:
@@ -298,7 +300,7 @@ module Files
298
300
  # criteria - object - Versioned success criteria definition for the expectation, including optional Files Transform Script content validation in criteria v2.
299
301
  # workspace_id - int64 - Workspace ID. `0` means the default workspace.
300
302
  def update(params = {})
301
- params ||= {}
303
+ params = (params || {}).dup
302
304
  params[:id] = @attributes[:id]
303
305
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
304
306
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
@@ -307,6 +309,7 @@ module Files
307
309
  raise InvalidParameterError.new("Bad parameter: path must be an String") if !params[:path].nil? and !params[:path].is_a?(String)
308
310
  raise InvalidParameterError.new("Bad parameter: source must be an String") if !params[:source].nil? and !params[:source].is_a?(String)
309
311
  raise InvalidParameterError.new("Bad parameter: exclude_pattern must be an String") if !params[:exclude_pattern].nil? and !params[:exclude_pattern].is_a?(String)
312
+ raise InvalidParameterError.new("Bad parameter: disabled must be a single value, not #{params[:disabled].class}") if [ Array, Hash ].any? { |klass| params[:disabled].is_a?(klass) }
310
313
  raise InvalidParameterError.new("Bad parameter: trigger must be an String") if !params[:trigger].nil? and !params[:trigger].is_a?(String)
311
314
  raise InvalidParameterError.new("Bad parameter: interval must be an String") if !params[:interval].nil? and !params[:interval].is_a?(String)
312
315
  raise InvalidParameterError.new("Bad parameter: recurring_day must be an Integer") if !params[:recurring_day].nil? and !params[:recurring_day].is_a?(Integer)
@@ -320,23 +323,27 @@ module Files
320
323
  raise InvalidParameterError.new("Bad parameter: late_acceptance_interval must be an Integer") if !params[:late_acceptance_interval].nil? and !params[:late_acceptance_interval].is_a?(Integer)
321
324
  raise InvalidParameterError.new("Bad parameter: inactivity_interval must be an Integer") if !params[:inactivity_interval].nil? and !params[:inactivity_interval].is_a?(Integer)
322
325
  raise InvalidParameterError.new("Bad parameter: max_open_interval must be an Integer") if !params[:max_open_interval].nil? and !params[:max_open_interval].is_a?(Integer)
326
+ raise InvalidParameterError.new("Bad parameter: criteria must be an Hash") if !params[:criteria].nil? and !params[:criteria].is_a?(Hash)
323
327
  raise InvalidParameterError.new("Bad parameter: workspace_id must be an Integer") if !params[:workspace_id].nil? and !params[:workspace_id].is_a?(Integer)
324
328
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
325
329
 
326
330
  response, options = Api.send_request("/expectations/#{@attributes[:id]}", :patch, params, @options) { |reply| reply.require_object("Expectation") }
327
331
  @attributes = response.data
332
+ @options = @options.merge(options)
328
333
  [ response, options ]
329
334
  end
330
335
 
331
336
  # Returns the [response, options] pair from Files::Api.send_request.
332
337
  def delete(params = {})
333
- params ||= {}
338
+ params = (params || {}).dup
334
339
  params[:id] = @attributes[:id]
335
340
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
336
341
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
337
342
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
338
343
 
339
- Api.send_request("/expectations/#{@attributes[:id]}", :delete, params, @options)
344
+ response, options = Api.send_request("/expectations/#{@attributes[:id]}", :delete, params, @options)
345
+ @options = @options.merge(options)
346
+ [ response, options ]
340
347
  end
341
348
 
342
349
  # Alias for #delete. Returns nil.
@@ -351,6 +358,7 @@ module Files
351
358
  else
352
359
  new_obj = Expectation.create(@attributes, @options)
353
360
  @attributes = new_obj.attributes
361
+ @options = @options.merge(new_obj.options)
354
362
  end
355
363
 
356
364
  true
@@ -372,8 +380,11 @@ module Files
372
380
  raise InvalidParameterError.new("Bad parameter: sort_by must be an Hash") if !params[:sort_by].nil? and !params[:sort_by].is_a?(Hash)
373
381
  raise InvalidParameterError.new("Bad parameter: filter must be an Hash") if !params[:filter].nil? and !params[:filter].is_a?(Hash)
374
382
 
383
+ list_options = options.dup
375
384
  List.new(Expectation, params) do |page_params, &check_page|
376
- Api.send_request("/expectations", :get, page_params, options, &check_page)
385
+ response, page_options = Api.send_request("/expectations", :get, page_params, list_options, &check_page)
386
+ list_options = list_options.merge(page_options)
387
+ [ response, page_options ]
377
388
  end
378
389
  end
379
390
 
@@ -389,7 +400,7 @@ module Files
389
400
  #
390
401
  # Returns a Files::Expectation.
391
402
  def self.find(id, params = {}, options = {})
392
- params ||= {}
403
+ params = (params || {}).dup
393
404
  params[:id] = id
394
405
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
395
406
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
@@ -435,6 +446,7 @@ module Files
435
446
  raise InvalidParameterError.new("Bad parameter: path must be an String") if !params[:path].nil? and !params[:path].is_a?(String)
436
447
  raise InvalidParameterError.new("Bad parameter: source must be an String") if !params[:source].nil? and !params[:source].is_a?(String)
437
448
  raise InvalidParameterError.new("Bad parameter: exclude_pattern must be an String") if !params[:exclude_pattern].nil? and !params[:exclude_pattern].is_a?(String)
449
+ raise InvalidParameterError.new("Bad parameter: disabled must be a single value, not #{params[:disabled].class}") if [ Array, Hash ].any? { |klass| params[:disabled].is_a?(klass) }
438
450
  raise InvalidParameterError.new("Bad parameter: trigger must be an String") if !params[:trigger].nil? and !params[:trigger].is_a?(String)
439
451
  raise InvalidParameterError.new("Bad parameter: interval must be an String") if !params[:interval].nil? and !params[:interval].is_a?(String)
440
452
  raise InvalidParameterError.new("Bad parameter: recurring_day must be an Integer") if !params[:recurring_day].nil? and !params[:recurring_day].is_a?(Integer)
@@ -462,7 +474,7 @@ module Files
462
474
  #
463
475
  # Returns a Files::ExpectationEvaluation.
464
476
  def self.trigger_evaluation(id, params = {}, options = {})
465
- params ||= {}
477
+ params = (params || {}).dup
466
478
  params[:id] = id
467
479
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
468
480
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
@@ -499,7 +511,7 @@ module Files
499
511
  #
500
512
  # Returns a Files::Expectation.
501
513
  def self.update(id, params = {}, options = {})
502
- params ||= {}
514
+ params = (params || {}).dup
503
515
  params[:id] = id
504
516
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
505
517
  raise InvalidParameterError.new("Bad parameter: name must be an String") if !params[:name].nil? and !params[:name].is_a?(String)
@@ -507,6 +519,7 @@ module Files
507
519
  raise InvalidParameterError.new("Bad parameter: path must be an String") if !params[:path].nil? and !params[:path].is_a?(String)
508
520
  raise InvalidParameterError.new("Bad parameter: source must be an String") if !params[:source].nil? and !params[:source].is_a?(String)
509
521
  raise InvalidParameterError.new("Bad parameter: exclude_pattern must be an String") if !params[:exclude_pattern].nil? and !params[:exclude_pattern].is_a?(String)
522
+ raise InvalidParameterError.new("Bad parameter: disabled must be a single value, not #{params[:disabled].class}") if [ Array, Hash ].any? { |klass| params[:disabled].is_a?(klass) }
510
523
  raise InvalidParameterError.new("Bad parameter: trigger must be an String") if !params[:trigger].nil? and !params[:trigger].is_a?(String)
511
524
  raise InvalidParameterError.new("Bad parameter: interval must be an String") if !params[:interval].nil? and !params[:interval].is_a?(String)
512
525
  raise InvalidParameterError.new("Bad parameter: recurring_day must be an Integer") if !params[:recurring_day].nil? and !params[:recurring_day].is_a?(Integer)
@@ -533,7 +546,7 @@ module Files
533
546
  #
534
547
  # Returns nil.
535
548
  def self.delete(id, params = {}, options = {})
536
- params ||= {}
549
+ params = (params || {}).dup
537
550
  params[:id] = id
538
551
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
539
552
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
@@ -117,8 +117,11 @@ module Files
117
117
  raise InvalidParameterError.new("Bad parameter: sort_by must be an Hash") if !params[:sort_by].nil? and !params[:sort_by].is_a?(Hash)
118
118
  raise InvalidParameterError.new("Bad parameter: filter must be an Hash") if !params[:filter].nil? and !params[:filter].is_a?(Hash)
119
119
 
120
+ list_options = options.dup
120
121
  List.new(ExpectationEvaluation, params) do |page_params, &check_page|
121
- Api.send_request("/expectation_evaluations", :get, page_params, options, &check_page)
122
+ response, page_options = Api.send_request("/expectation_evaluations", :get, page_params, list_options, &check_page)
123
+ list_options = list_options.merge(page_options)
124
+ [ response, page_options ]
122
125
  end
123
126
  end
124
127
 
@@ -134,7 +137,7 @@ module Files
134
137
  #
135
138
  # Returns a Files::ExpectationEvaluation.
136
139
  def self.find(id, params = {}, options = {})
137
- params ||= {}
140
+ params = (params || {}).dup
138
141
  params[:id] = id
139
142
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
140
143
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
@@ -88,13 +88,15 @@ module Files
88
88
 
89
89
  # Resolve an expectation incident
90
90
  def resolve(params = {})
91
- params ||= {}
91
+ params = (params || {}).dup
92
92
  params[:id] = @attributes[:id]
93
93
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
94
94
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
95
95
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
96
96
 
97
- Api.send_request("/expectation_incidents/#{@attributes[:id]}/resolve", :post, params, @options)
97
+ response, options = Api.send_request("/expectation_incidents/#{@attributes[:id]}/resolve", :post, params, @options)
98
+ @options = @options.merge(options)
99
+ [ response, options ]
98
100
  end
99
101
 
100
102
  # Snooze an expectation incident until a specified time
@@ -102,7 +104,7 @@ module Files
102
104
  # Parameters:
103
105
  # snoozed_until (required) - string - Time until which the incident should remain snoozed.
104
106
  def snooze(params = {})
105
- params ||= {}
107
+ params = (params || {}).dup
106
108
  params[:id] = @attributes[:id]
107
109
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
108
110
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
@@ -110,18 +112,22 @@ module Files
110
112
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
111
113
  raise MissingParameterError.new("Parameter missing: snoozed_until") if params[:snoozed_until].nil?
112
114
 
113
- Api.send_request("/expectation_incidents/#{@attributes[:id]}/snooze", :post, params, @options)
115
+ response, options = Api.send_request("/expectation_incidents/#{@attributes[:id]}/snooze", :post, params, @options)
116
+ @options = @options.merge(options)
117
+ [ response, options ]
114
118
  end
115
119
 
116
120
  # Acknowledge an expectation incident
117
121
  def acknowledge(params = {})
118
- params ||= {}
122
+ params = (params || {}).dup
119
123
  params[:id] = @attributes[:id]
120
124
  raise MissingParameterError.new("Current object doesn't have a id") unless @attributes[:id]
121
125
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
122
126
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
123
127
 
124
- Api.send_request("/expectation_incidents/#{@attributes[:id]}/acknowledge", :post, params, @options)
128
+ response, options = Api.send_request("/expectation_incidents/#{@attributes[:id]}/acknowledge", :post, params, @options)
129
+ @options = @options.merge(options)
130
+ [ response, options ]
125
131
  end
126
132
 
127
133
  # Parameters:
@@ -140,8 +146,11 @@ module Files
140
146
  raise InvalidParameterError.new("Bad parameter: sort_by must be an Hash") if !params[:sort_by].nil? and !params[:sort_by].is_a?(Hash)
141
147
  raise InvalidParameterError.new("Bad parameter: filter must be an Hash") if !params[:filter].nil? and !params[:filter].is_a?(Hash)
142
148
 
149
+ list_options = options.dup
143
150
  List.new(ExpectationIncident, params) do |page_params, &check_page|
144
- Api.send_request("/expectation_incidents", :get, page_params, options, &check_page)
151
+ response, page_options = Api.send_request("/expectation_incidents", :get, page_params, list_options, &check_page)
152
+ list_options = list_options.merge(page_options)
153
+ [ response, page_options ]
145
154
  end
146
155
  end
147
156
 
@@ -157,7 +166,7 @@ module Files
157
166
  #
158
167
  # Returns a Files::ExpectationIncident.
159
168
  def self.find(id, params = {}, options = {})
160
- params ||= {}
169
+ params = (params || {}).dup
161
170
  params[:id] = id
162
171
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
163
172
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
@@ -177,7 +186,7 @@ module Files
177
186
  #
178
187
  # Returns a Files::ExpectationIncident.
179
188
  def self.resolve(id, params = {}, options = {})
180
- params ||= {}
189
+ params = (params || {}).dup
181
190
  params[:id] = id
182
191
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
183
192
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
@@ -196,7 +205,7 @@ module Files
196
205
  #
197
206
  # Returns a Files::ExpectationIncident.
198
207
  def self.snooze(id, params = {}, options = {})
199
- params ||= {}
208
+ params = (params || {}).dup
200
209
  params[:id] = id
201
210
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
202
211
  raise InvalidParameterError.new("Bad parameter: snoozed_until must be an String") if !params[:snoozed_until].nil? and !params[:snoozed_until].is_a?(String)
@@ -214,7 +223,7 @@ module Files
214
223
  #
215
224
  # Returns a Files::ExpectationIncident.
216
225
  def self.acknowledge(id, params = {}, options = {})
217
- params ||= {}
226
+ params = (params || {}).dup
218
227
  params[:id] = id
219
228
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
220
229
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?
@@ -67,6 +67,7 @@ module Files
67
67
  else
68
68
  new_obj = ExternalEvent.create(@attributes, @options)
69
69
  @attributes = new_obj.attributes
70
+ @options = @options.merge(new_obj.options)
70
71
  end
71
72
 
72
73
  true
@@ -96,8 +97,11 @@ module Files
96
97
  raise InvalidParameterError.new("Bad parameter: filter_lt must be an Hash") if !params[:filter_lt].nil? and !params[:filter_lt].is_a?(Hash)
97
98
  raise InvalidParameterError.new("Bad parameter: filter_lteq must be an Hash") if !params[:filter_lteq].nil? and !params[:filter_lteq].is_a?(Hash)
98
99
 
100
+ list_options = options.dup
99
101
  List.new(ExternalEvent, params) do |page_params, &check_page|
100
- Api.send_request("/external_events", :get, page_params, options, &check_page)
102
+ response, page_options = Api.send_request("/external_events", :get, page_params, list_options, &check_page)
103
+ list_options = list_options.merge(page_options)
104
+ [ response, page_options ]
101
105
  end
102
106
  end
103
107
 
@@ -113,7 +117,7 @@ module Files
113
117
  #
114
118
  # Returns a Files::ExternalEvent.
115
119
  def self.find(id, params = {}, options = {})
116
- params ||= {}
120
+ params = (params || {}).dup
117
121
  params[:id] = id
118
122
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if !params[:id].nil? and !params[:id].is_a?(Integer)
119
123
  raise MissingParameterError.new("Parameter missing: id") if params[:id].nil?