oci 2.4.6 → 2.4.7

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 (123) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -1
  3. data/lib/oci.rb +2 -0
  4. data/lib/oci/database/database.rb +1 -0
  5. data/lib/oci/database/models/database.rb +18 -4
  6. data/lib/oci/database/models/database_connection_strings.rb +182 -0
  7. data/lib/oci/database/models/database_summary.rb +18 -4
  8. data/lib/oci/dns/dns.rb +23 -0
  9. data/lib/oci/dns/dns_client.rb +802 -75
  10. data/lib/oci/dns/dns_client_composite_operations.rb +238 -0
  11. data/lib/oci/dns/models/create_steering_policy_attachment_details.rb +205 -0
  12. data/lib/oci/dns/models/create_steering_policy_details.rb +333 -0
  13. data/lib/oci/dns/models/steering_policy.rb +418 -0
  14. data/lib/oci/dns/models/steering_policy_answer.rb +205 -0
  15. data/lib/oci/dns/models/steering_policy_attachment.rb +308 -0
  16. data/lib/oci/dns/models/steering_policy_attachment_summary.rb +304 -0
  17. data/lib/oci/dns/models/steering_policy_filter_answer_data.rb +168 -0
  18. data/lib/oci/dns/models/steering_policy_filter_rule.rb +178 -0
  19. data/lib/oci/dns/models/steering_policy_filter_rule_case.rb +165 -0
  20. data/lib/oci/dns/models/steering_policy_health_rule.rb +160 -0
  21. data/lib/oci/dns/models/steering_policy_health_rule_case.rb +152 -0
  22. data/lib/oci/dns/models/steering_policy_limit_rule.rb +179 -0
  23. data/lib/oci/dns/models/steering_policy_limit_rule_case.rb +162 -0
  24. data/lib/oci/dns/models/steering_policy_priority_answer_data.rb +161 -0
  25. data/lib/oci/dns/models/steering_policy_priority_rule.rb +178 -0
  26. data/lib/oci/dns/models/steering_policy_priority_rule_case.rb +165 -0
  27. data/lib/oci/dns/models/steering_policy_rule.rb +237 -0
  28. data/lib/oci/dns/models/steering_policy_summary.rb +391 -0
  29. data/lib/oci/dns/models/steering_policy_weighted_answer_data.rb +161 -0
  30. data/lib/oci/dns/models/steering_policy_weighted_rule.rb +178 -0
  31. data/lib/oci/dns/models/steering_policy_weighted_rule_case.rb +165 -0
  32. data/lib/oci/dns/models/update_steering_policy_attachment_details.rb +156 -0
  33. data/lib/oci/dns/models/update_steering_policy_details.rb +319 -0
  34. data/lib/oci/email/email.rb +1 -0
  35. data/lib/oci/email/email_client.rb +87 -16
  36. data/lib/oci/email/email_client_composite_operations.rb +40 -0
  37. data/lib/oci/email/models/create_sender_details.rb +40 -6
  38. data/lib/oci/email/models/create_suppression_details.rb +2 -2
  39. data/lib/oci/email/models/sender.rb +53 -5
  40. data/lib/oci/email/models/sender_summary.rb +38 -4
  41. data/lib/oci/email/models/suppression.rb +20 -3
  42. data/lib/oci/email/models/update_sender_details.rb +174 -0
  43. data/lib/oci/healthchecks/health_checks_client.rb +1137 -0
  44. data/lib/oci/healthchecks/health_checks_client_composite_operations.rb +24 -0
  45. data/lib/oci/healthchecks/healthchecks.rb +41 -0
  46. data/lib/oci/healthchecks/models/connection.rb +159 -0
  47. data/lib/oci/healthchecks/models/create_http_monitor_details.rb +359 -0
  48. data/lib/oci/healthchecks/models/create_on_demand_http_probe_details.rb +278 -0
  49. data/lib/oci/healthchecks/models/create_on_demand_ping_probe_details.rb +229 -0
  50. data/lib/oci/healthchecks/models/create_ping_monitor_details.rb +310 -0
  51. data/lib/oci/healthchecks/models/dns.rb +165 -0
  52. data/lib/oci/healthchecks/models/geolocation.rb +239 -0
  53. data/lib/oci/healthchecks/models/health_checks_vantage_point_summary.rb +211 -0
  54. data/lib/oci/healthchecks/models/http_monitor.rb +395 -0
  55. data/lib/oci/healthchecks/models/http_monitor_summary.rb +290 -0
  56. data/lib/oci/healthchecks/models/http_probe.rb +314 -0
  57. data/lib/oci/healthchecks/models/http_probe_method.rb +10 -0
  58. data/lib/oci/healthchecks/models/http_probe_protocol.rb +10 -0
  59. data/lib/oci/healthchecks/models/http_probe_result_summary.rb +542 -0
  60. data/lib/oci/healthchecks/models/ping_monitor.rb +340 -0
  61. data/lib/oci/healthchecks/models/ping_monitor_summary.rb +290 -0
  62. data/lib/oci/healthchecks/models/ping_probe.rb +259 -0
  63. data/lib/oci/healthchecks/models/ping_probe_protocol.rb +10 -0
  64. data/lib/oci/healthchecks/models/ping_probe_result_summary.rb +418 -0
  65. data/lib/oci/healthchecks/models/routing.rb +192 -0
  66. data/lib/oci/healthchecks/models/tcp_connection.rb +189 -0
  67. data/lib/oci/healthchecks/models/update_http_monitor_details.rb +339 -0
  68. data/lib/oci/healthchecks/models/update_ping_monitor_details.rb +292 -0
  69. data/lib/oci/healthchecks/util.rb +2 -0
  70. data/lib/oci/regions.rb +3 -1
  71. data/lib/oci/version.rb +1 -1
  72. data/lib/oci/waas/models/access_rule.rb +283 -0
  73. data/lib/oci/waas/models/access_rule_criteria.rb +206 -0
  74. data/lib/oci/waas/models/address_rate_limiting.rb +195 -0
  75. data/lib/oci/waas/models/block_challenge_settings.rb +288 -0
  76. data/lib/oci/waas/models/captcha.rb +231 -0
  77. data/lib/oci/waas/models/certificate.rb +383 -0
  78. data/lib/oci/waas/models/certificate_extensions.rb +170 -0
  79. data/lib/oci/waas/models/certificate_public_key_info.rb +170 -0
  80. data/lib/oci/waas/models/certificate_subject_name.rb +218 -0
  81. data/lib/oci/waas/models/certificate_summary.rb +274 -0
  82. data/lib/oci/waas/models/create_certificate_details.rb +241 -0
  83. data/lib/oci/waas/models/create_waas_policy_details.rb +257 -0
  84. data/lib/oci/waas/models/device_fingerprint_challenge.rb +268 -0
  85. data/lib/oci/waas/models/edge_subnet.rb +173 -0
  86. data/lib/oci/waas/models/good_bot.rb +183 -0
  87. data/lib/oci/waas/models/header.rb +159 -0
  88. data/lib/oci/waas/models/human_interaction_challenge.rb +282 -0
  89. data/lib/oci/waas/models/js_challenge.rb +240 -0
  90. data/lib/oci/waas/models/lifecycle_states.rb +14 -0
  91. data/lib/oci/waas/models/origin.rb +191 -0
  92. data/lib/oci/waas/models/policy_config.rb +181 -0
  93. data/lib/oci/waas/models/protection_rule.rb +237 -0
  94. data/lib/oci/waas/models/protection_rule_action.rb +185 -0
  95. data/lib/oci/waas/models/protection_rule_exclusion.rb +182 -0
  96. data/lib/oci/waas/models/protection_settings.rb +404 -0
  97. data/lib/oci/waas/models/recommendation.rb +210 -0
  98. data/lib/oci/waas/models/threat_feed.rb +202 -0
  99. data/lib/oci/waas/models/threat_feed_action.rb +175 -0
  100. data/lib/oci/waas/models/update_certificate_details.rb +183 -0
  101. data/lib/oci/waas/models/update_waas_policy_details.rb +233 -0
  102. data/lib/oci/waas/models/waas_policy.rb +331 -0
  103. data/lib/oci/waas/models/waas_policy_summary.rb +271 -0
  104. data/lib/oci/waas/models/waf_blocked_request.rb +219 -0
  105. data/lib/oci/waas/models/waf_config.rb +295 -0
  106. data/lib/oci/waas/models/waf_config_details.rb +253 -0
  107. data/lib/oci/waas/models/waf_log.rb +510 -0
  108. data/lib/oci/waas/models/waf_meter_datum.rb +279 -0
  109. data/lib/oci/waas/models/waf_request.rb +177 -0
  110. data/lib/oci/waas/models/waf_traffic_datum.rb +223 -0
  111. data/lib/oci/waas/models/whitelist.rb +159 -0
  112. data/lib/oci/waas/models/work_request.rb +322 -0
  113. data/lib/oci/waas/models/work_request_error.rb +170 -0
  114. data/lib/oci/waas/models/work_request_log_entry.rb +159 -0
  115. data/lib/oci/waas/models/work_request_operation_types.rb +12 -0
  116. data/lib/oci/waas/models/work_request_resource.rb +217 -0
  117. data/lib/oci/waas/models/work_request_status_values.rb +14 -0
  118. data/lib/oci/waas/models/work_request_summary.rb +302 -0
  119. data/lib/oci/waas/util.rb +2 -0
  120. data/lib/oci/waas/waas.rb +66 -0
  121. data/lib/oci/waas/waas_client.rb +3044 -0
  122. data/lib/oci/waas/waas_client_composite_operations.rb +990 -0
  123. metadata +105 -2
@@ -16,6 +16,7 @@ require 'oci/email/models/sender'
16
16
  require 'oci/email/models/sender_summary'
17
17
  require 'oci/email/models/suppression'
18
18
  require 'oci/email/models/suppression_summary'
19
+ require 'oci/email/models/update_sender_details'
19
20
 
20
21
  # Require generated clients
21
22
  require 'oci/email/email_client'
@@ -5,7 +5,8 @@ require 'logger'
5
5
 
6
6
  # rubocop:disable Lint/UnneededCopDisableDirective, Metrics/LineLength
7
7
  module OCI
8
- # API spec for managing OCI Email Delivery services.
8
+ # API for the Email Delivery service. Use this API to send high-volume, application-generated
9
+ # emails. For more information, see [Overview of the Email Delivery Service](/iaas/Content/Email/Concepts/overview.htm).
9
10
  class Email::EmailClient
10
11
  # Client used to make HTTP requests.
11
12
  # @return [OCI::ApiClient]
@@ -87,7 +88,7 @@ module OCI
87
88
 
88
89
  raise 'A region must be specified.' unless @region
89
90
 
90
- @endpoint = OCI::Regions.get_service_endpoint(@region, :EmailClient) + '/20170907'
91
+ @endpoint = OCI::Regions.get_service_endpoint_for_template(@region, 'https://email.{region}.{secondLevelDomain}') + '/20170907'
91
92
  logger.info "EmailClient endpoint set to '#{endpoint}'." if logger
92
93
  end
93
94
 
@@ -99,7 +100,6 @@ module OCI
99
100
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
100
101
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
101
102
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
102
- # rubocop:disable Lint/UnusedMethodArgument
103
103
 
104
104
 
105
105
  # Creates a sender for a tenancy in a given compartment.
@@ -107,6 +107,7 @@ module OCI
107
107
  # @param [Hash] opts the optional parameters
108
108
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
109
109
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
110
+ # @option opts [String] :opc_request_id The request ID for tracing from the system
110
111
  # @return [Response] A Response object with data of type {OCI::Email::Models::Sender Sender}
111
112
  def create_sender(create_sender_details, opts = {})
112
113
  logger.debug 'Calling operation EmailClient#create_sender.' if logger
@@ -124,6 +125,7 @@ module OCI
124
125
  header_params = {}
125
126
  header_params[:accept] = 'application/json'
126
127
  header_params[:'content-type'] = 'application/json'
128
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
127
129
  # rubocop:enable Style/NegatedIf
128
130
 
129
131
  post_body = @api_client.object_to_http_body(create_sender_details)
@@ -146,21 +148,23 @@ module OCI
146
148
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
147
149
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
148
150
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
149
- # rubocop:enable Lint/UnusedMethodArgument
150
151
 
151
152
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
152
153
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
153
154
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
154
- # rubocop:disable Lint/UnusedMethodArgument
155
155
 
156
156
 
157
157
  # Adds recipient email addresses to the suppression list for a tenancy.
158
+ # Addresses added to the suppression list via the API are denoted as
159
+ # \"MANUAL\" in the `reason` field. *Note:* All email addresses added to the
160
+ # suppression list are normalized to include only lowercase letters.
158
161
  #
159
162
  # @param [OCI::Email::Models::CreateSuppressionDetails] create_suppression_details Adds a single email address to the suppression list for a compartment's tenancy.
160
163
  #
161
164
  # @param [Hash] opts the optional parameters
162
165
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
163
166
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
167
+ # @option opts [String] :opc_request_id The request ID for tracing from the system
164
168
  # @return [Response] A Response object with data of type {OCI::Email::Models::Suppression Suppression}
165
169
  def create_suppression(create_suppression_details, opts = {})
166
170
  logger.debug 'Calling operation EmailClient#create_suppression.' if logger
@@ -178,6 +182,7 @@ module OCI
178
182
  header_params = {}
179
183
  header_params[:accept] = 'application/json'
180
184
  header_params[:'content-type'] = 'application/json'
185
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
181
186
  # rubocop:enable Style/NegatedIf
182
187
 
183
188
  post_body = @api_client.object_to_http_body(create_suppression_details)
@@ -200,12 +205,10 @@ module OCI
200
205
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
201
206
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
202
207
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
203
- # rubocop:enable Lint/UnusedMethodArgument
204
208
 
205
209
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
206
210
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
207
211
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
208
- # rubocop:disable Lint/UnusedMethodArgument
209
212
 
210
213
 
211
214
  # Deletes an approved sender for a tenancy in a given compartment for a
@@ -215,6 +218,7 @@ module OCI
215
218
  # @param [Hash] opts the optional parameters
216
219
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
217
220
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
221
+ # @option opts [String] :opc_request_id The request ID for tracing from the system
218
222
  # @return [Response] A Response object with data of type nil
219
223
  def delete_sender(sender_id, opts = {})
220
224
  logger.debug 'Calling operation EmailClient#delete_sender.' if logger
@@ -233,6 +237,7 @@ module OCI
233
237
  header_params = {}
234
238
  header_params[:accept] = 'application/json'
235
239
  header_params[:'content-type'] = 'application/json'
240
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
236
241
  # rubocop:enable Style/NegatedIf
237
242
 
238
243
  post_body = nil
@@ -254,12 +259,10 @@ module OCI
254
259
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
255
260
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
256
261
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
257
- # rubocop:enable Lint/UnusedMethodArgument
258
262
 
259
263
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
260
264
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
261
265
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
262
- # rubocop:disable Lint/UnusedMethodArgument
263
266
 
264
267
 
265
268
  # Removes a suppressed recipient email address from the suppression list
@@ -269,6 +272,7 @@ module OCI
269
272
  # @param [Hash] opts the optional parameters
270
273
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
271
274
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
275
+ # @option opts [String] :opc_request_id The request ID for tracing from the system
272
276
  # @return [Response] A Response object with data of type nil
273
277
  def delete_suppression(suppression_id, opts = {})
274
278
  logger.debug 'Calling operation EmailClient#delete_suppression.' if logger
@@ -287,6 +291,7 @@ module OCI
287
291
  header_params = {}
288
292
  header_params[:accept] = 'application/json'
289
293
  header_params[:'content-type'] = 'application/json'
294
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
290
295
  # rubocop:enable Style/NegatedIf
291
296
 
292
297
  post_body = nil
@@ -308,12 +313,10 @@ module OCI
308
313
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
309
314
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
310
315
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
311
- # rubocop:enable Lint/UnusedMethodArgument
312
316
 
313
317
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
314
318
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
315
319
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
316
- # rubocop:disable Lint/UnusedMethodArgument
317
320
 
318
321
 
319
322
  # Gets an approved sender for a given `senderId`.
@@ -321,6 +324,7 @@ module OCI
321
324
  # @param [Hash] opts the optional parameters
322
325
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
323
326
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
327
+ # @option opts [String] :opc_request_id The request ID for tracing from the system
324
328
  # @return [Response] A Response object with data of type {OCI::Email::Models::Sender Sender}
325
329
  def get_sender(sender_id, opts = {})
326
330
  logger.debug 'Calling operation EmailClient#get_sender.' if logger
@@ -339,6 +343,7 @@ module OCI
339
343
  header_params = {}
340
344
  header_params[:accept] = 'application/json'
341
345
  header_params[:'content-type'] = 'application/json'
346
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
342
347
  # rubocop:enable Style/NegatedIf
343
348
 
344
349
  post_body = nil
@@ -361,12 +366,10 @@ module OCI
361
366
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
362
367
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
363
368
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
364
- # rubocop:enable Lint/UnusedMethodArgument
365
369
 
366
370
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
367
371
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
368
372
  # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
369
- # rubocop:disable Lint/UnusedMethodArgument
370
373
 
371
374
 
372
375
  # Gets the details of a suppressed recipient email address for a given
@@ -376,6 +379,7 @@ module OCI
376
379
  # @param [Hash] opts the optional parameters
377
380
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
378
381
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
382
+ # @option opts [String] :opc_request_id The request ID for tracing from the system
379
383
  # @return [Response] A Response object with data of type {OCI::Email::Models::Suppression Suppression}
380
384
  def get_suppression(suppression_id, opts = {})
381
385
  logger.debug 'Calling operation EmailClient#get_suppression.' if logger
@@ -394,6 +398,7 @@ module OCI
394
398
  header_params = {}
395
399
  header_params[:accept] = 'application/json'
396
400
  header_params[:'content-type'] = 'application/json'
401
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
397
402
  # rubocop:enable Style/NegatedIf
398
403
 
399
404
  post_body = nil
@@ -416,7 +421,6 @@ module OCI
416
421
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
417
422
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
418
423
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
419
- # rubocop:enable Lint/UnusedMethodArgument
420
424
 
421
425
  # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
422
426
  # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -429,12 +433,15 @@ module OCI
429
433
  # @param [Hash] opts the optional parameters
430
434
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
431
435
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
436
+ # @option opts [String] :opc_request_id The request ID for tracing from the system
432
437
  # @option opts [String] :lifecycle_state The current state of a sender.
433
438
  # @option opts [String] :email_address The email address of the approved sender.
434
439
  # @option opts [String] :page The value of the `opc-next-page` response header from the previous
435
440
  # GET request.
436
441
  #
437
- # @option opts [Integer] :limit The maximum number of items to return in a paginated GET request.
442
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a
443
+ # paginated \"List\" call. `1` is the minimum, `1000` is the maximum. For important details about
444
+ # how pagination works, see [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
438
445
  #
439
446
  # @option opts [String] :sort_by The field to sort by. The `TIMECREATED` value returns the list in in
440
447
  # descending order by default. The `EMAILADDRESS` value returns the list in
@@ -481,6 +488,7 @@ module OCI
481
488
  header_params = {}
482
489
  header_params[:accept] = 'application/json'
483
490
  header_params[:'content-type'] = 'application/json'
491
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
484
492
  # rubocop:enable Style/NegatedIf
485
493
 
486
494
  post_body = nil
@@ -517,6 +525,7 @@ module OCI
517
525
  # @param [Hash] opts the optional parameters
518
526
  # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
519
527
  # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
528
+ # @option opts [String] :opc_request_id The request ID for tracing from the system
520
529
  # @option opts [String] :email_address The email address of the suppression.
521
530
  # @option opts [DateTime] :time_created_greater_than_or_equal_to Search for suppressions that were created within a specific date range,
522
531
  # using this parameter to specify the earliest creation date for the
@@ -539,7 +548,9 @@ module OCI
539
548
  # @option opts [String] :page The value of the `opc-next-page` response header from the previous
540
549
  # GET request.
541
550
  #
542
- # @option opts [Integer] :limit The maximum number of items to return in a paginated GET request.
551
+ # @option opts [Integer] :limit For list pagination. The maximum number of results per page, or items to return in a
552
+ # paginated \"List\" call. `1` is the minimum, `1000` is the maximum. For important details about
553
+ # how pagination works, see [List Pagination](https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine).
543
554
  #
544
555
  # @option opts [String] :sort_by The field to sort by. The `TIMECREATED` value returns the list in in
545
556
  # descending order by default. The `EMAILADDRESS` value returns the list in
@@ -583,6 +594,7 @@ module OCI
583
594
  header_params = {}
584
595
  header_params[:accept] = 'application/json'
585
596
  header_params[:'content-type'] = 'application/json'
597
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
586
598
  # rubocop:enable Style/NegatedIf
587
599
 
588
600
  post_body = nil
@@ -606,6 +618,65 @@ module OCI
606
618
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
607
619
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
608
620
 
621
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
622
+ # rubocop:disable Style/IfUnlessModifier, Metrics/ParameterLists
623
+ # rubocop:disable Metrics/MethodLength, Layout/EmptyLines
624
+
625
+
626
+ # Replaces the set of tags for a sender with the tags provided. If either freeform
627
+ # or defined tags are omitted, the tags for that set remain the same. Each set must
628
+ # include the full set of tags for the sender, partial updates are not permitted.
629
+ # For more information about tagging, see [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
630
+ #
631
+ # @param [String] sender_id The unique OCID of the sender.
632
+ # @param [OCI::Email::Models::UpdateSenderDetails] update_sender_details update details for sender.
633
+ # @param [Hash] opts the optional parameters
634
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
635
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then the operation will not retry
636
+ # @option opts [String] :opc_request_id The request ID for tracing from the system
637
+ # @return [Response] A Response object with data of type {OCI::Email::Models::Sender Sender}
638
+ def update_sender(sender_id, update_sender_details, opts = {})
639
+ logger.debug 'Calling operation EmailClient#update_sender.' if logger
640
+
641
+ raise "Missing the required parameter 'sender_id' when calling update_sender." if sender_id.nil?
642
+ raise "Missing the required parameter 'update_sender_details' when calling update_sender." if update_sender_details.nil?
643
+ raise "Parameter value for 'sender_id' must not be blank" if OCI::Internal::Util.blank_string?(sender_id)
644
+
645
+ path = '/senders/{senderId}'.sub('{senderId}', sender_id.to_s)
646
+ operation_signing_strategy = :standard
647
+
648
+ # rubocop:disable Style/NegatedIf
649
+ # Query Params
650
+ query_params = {}
651
+
652
+ # Header Params
653
+ header_params = {}
654
+ header_params[:accept] = 'application/json'
655
+ header_params[:'content-type'] = 'application/json'
656
+ header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
657
+ # rubocop:enable Style/NegatedIf
658
+
659
+ post_body = @api_client.object_to_http_body(update_sender_details)
660
+
661
+ # rubocop:disable Metrics/BlockLength
662
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'EmailClient#update_sender') do
663
+ @api_client.call_api(
664
+ :PUT,
665
+ path,
666
+ endpoint,
667
+ header_params: header_params,
668
+ query_params: query_params,
669
+ operation_signing_strategy: operation_signing_strategy,
670
+ body: post_body,
671
+ return_type: 'OCI::Email::Models::Sender'
672
+ )
673
+ end
674
+ # rubocop:enable Metrics/BlockLength
675
+ end
676
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
677
+ # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
678
+ # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
679
+
609
680
  private
610
681
 
611
682
  def applicable_retry_config(opts = {})
@@ -98,6 +98,46 @@ module OCI
98
98
  end
99
99
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
100
100
  # rubocop:enable Layout/EmptyLines
101
+
102
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
103
+ # rubocop:disable Layout/EmptyLines
104
+
105
+
106
+ # Calls {OCI::Email::EmailClient#update_sender} and then waits for the {OCI::Email::Models::Sender} acted upon
107
+ # to enter the given state(s).
108
+ #
109
+ # @param [String] sender_id The unique OCID of the sender.
110
+ # @param [OCI::Email::Models::UpdateSenderDetails] update_sender_details update details for sender.
111
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Email::Models::Sender#lifecycle_state}
112
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Email::EmailClient#update_sender}
113
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
114
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
115
+ # * max_wait_seconds The maximum time to wait, in seconds
116
+ #
117
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Email::Models::Sender}
118
+ def update_sender_and_wait_for_state(sender_id, update_sender_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
119
+ operation_result = @service_client.update_sender(sender_id, update_sender_details, base_operation_opts)
120
+
121
+ return operation_result if wait_for_states.empty?
122
+
123
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
124
+ wait_for_resource_id = operation_result.data.id
125
+
126
+ begin
127
+ waiter_result = @service_client.get_sender(wait_for_resource_id).wait_until(
128
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
129
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
130
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
131
+ )
132
+ result_to_return = waiter_result
133
+
134
+ return result_to_return
135
+ rescue StandardError
136
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
137
+ end
138
+ end
139
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
140
+ # rubocop:enable Layout/EmptyLines
101
141
  end
102
142
  end
103
143
  # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -7,20 +7,36 @@ module OCI
7
7
  # The details needed for creating a sender.
8
8
  #
9
9
  class Email::Models::CreateSenderDetails # rubocop:disable Metrics/LineLength
10
- # The OCID of the compartment that contains the sender.
10
+ # **[Required]** The OCID of the compartment that contains the sender.
11
11
  # @return [String]
12
12
  attr_accessor :compartment_id
13
13
 
14
- # The email address of the sender.
14
+ # **[Required]** The email address of the sender.
15
15
  # @return [String]
16
16
  attr_accessor :email_address
17
17
 
18
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace.
19
+ # For more information, see [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
20
+ # Example: `{\"Department\": \"Finance\"}`
21
+ #
22
+ # @return [Hash<String, String>]
23
+ attr_accessor :freeform_tags
24
+
25
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
26
+ # For more information, see [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
27
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
28
+ #
29
+ # @return [Hash<String, Hash<String, Object>>]
30
+ attr_accessor :defined_tags
31
+
18
32
  # Attribute mapping from ruby-style variable name to JSON key.
19
33
  def self.attribute_map
20
34
  {
21
35
  # rubocop:disable Style/SymbolLiteral
22
36
  'compartment_id': :'compartmentId',
23
- 'email_address': :'emailAddress'
37
+ 'email_address': :'emailAddress',
38
+ 'freeform_tags': :'freeformTags',
39
+ 'defined_tags': :'definedTags'
24
40
  # rubocop:enable Style/SymbolLiteral
25
41
  }
26
42
  end
@@ -30,7 +46,9 @@ module OCI
30
46
  {
31
47
  # rubocop:disable Style/SymbolLiteral
32
48
  'compartment_id': :'String',
33
- 'email_address': :'String'
49
+ 'email_address': :'String',
50
+ 'freeform_tags': :'Hash<String, String>',
51
+ 'defined_tags': :'Hash<String, Hash<String, Object>>'
34
52
  # rubocop:enable Style/SymbolLiteral
35
53
  }
36
54
  end
@@ -43,6 +61,8 @@ module OCI
43
61
  # @param [Hash] attributes Model attributes in the form of hash
44
62
  # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
45
63
  # @option attributes [String] :email_address The value to assign to the {#email_address} property
64
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
65
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
46
66
  def initialize(attributes = {})
47
67
  return unless attributes.is_a?(Hash)
48
68
 
@@ -60,6 +80,18 @@ module OCI
60
80
  raise 'You cannot provide both :emailAddress and :email_address' if attributes.key?(:'emailAddress') && attributes.key?(:'email_address')
61
81
 
62
82
  self.email_address = attributes[:'email_address'] if attributes[:'email_address']
83
+
84
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
85
+
86
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
87
+
88
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
89
+
90
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
91
+
92
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
93
+
94
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
63
95
  end
64
96
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
65
97
  # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
@@ -74,7 +106,9 @@ module OCI
74
106
 
75
107
  self.class == other.class &&
76
108
  compartment_id == other.compartment_id &&
77
- email_address == other.email_address
109
+ email_address == other.email_address &&
110
+ freeform_tags == other.freeform_tags &&
111
+ defined_tags == other.defined_tags
78
112
  end
79
113
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Metrics/LineLength, Layout/EmptyLines
80
114
 
@@ -90,7 +124,7 @@ module OCI
90
124
  # Calculates hash code according to all attributes.
91
125
  # @return [Fixnum] Hash code
92
126
  def hash
93
- [compartment_id, email_address].hash
127
+ [compartment_id, email_address, freeform_tags, defined_tags].hash
94
128
  end
95
129
  # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
96
130