oci 2.1.1 → 2.1.2

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 (76) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +26 -1
  3. data/lib/oci.rb +1 -0
  4. data/lib/oci/audit/audit_client.rb +65 -30
  5. data/lib/oci/audit/models/audit_event.rb +17 -1
  6. data/lib/oci/core/blockstorage_client.rb +336 -197
  7. data/lib/oci/core/compute_client.rb +601 -357
  8. data/lib/oci/core/models/attach_volume_details.rb +4 -0
  9. data/lib/oci/core/models/boot_volume.rb +1 -1
  10. data/lib/oci/core/models/dhcp_option.rb +4 -0
  11. data/lib/oci/core/models/export_image_details.rb +4 -0
  12. data/lib/oci/core/models/image_source_details.rb +4 -0
  13. data/lib/oci/core/models/instance_source_details.rb +4 -0
  14. data/lib/oci/core/models/volume_attachment.rb +4 -0
  15. data/lib/oci/core/models/volume_source_details.rb +4 -0
  16. data/lib/oci/core/util.rb +29 -0
  17. data/lib/oci/core/virtual_network_client.rb +1695 -1031
  18. data/lib/oci/database/database_client.rb +612 -368
  19. data/lib/oci/database/models/create_data_guard_association_details.rb +4 -0
  20. data/lib/oci/database/models/create_db_home_with_db_system_id_base.rb +4 -0
  21. data/lib/oci/dns/dns_client.rb +271 -158
  22. data/lib/oci/email/email_client.rb +144 -79
  23. data/lib/oci/file_storage/file_storage_client.rb +354 -207
  24. data/lib/oci/identity/identity_client.rb +1111 -670
  25. data/lib/oci/identity/models/create_identity_provider_details.rb +4 -0
  26. data/lib/oci/identity/models/identity_provider.rb +4 -0
  27. data/lib/oci/identity/models/update_identity_provider_details.rb +4 -0
  28. data/lib/oci/load_balancer/load_balancer.rb +4 -0
  29. data/lib/oci/load_balancer/load_balancer_client.rb +943 -383
  30. data/lib/oci/load_balancer/load_balancer_client_composite_operations.rb +149 -17
  31. data/lib/oci/load_balancer/models/backend.rb +5 -5
  32. data/lib/oci/load_balancer/models/backend_details.rb +4 -4
  33. data/lib/oci/load_balancer/models/backend_set.rb +1 -1
  34. data/lib/oci/load_balancer/models/backend_set_health.rb +4 -4
  35. data/lib/oci/load_balancer/models/certificate.rb +2 -2
  36. data/lib/oci/load_balancer/models/certificate_details.rb +2 -4
  37. data/lib/oci/load_balancer/models/connection_configuration.rb +1 -28
  38. data/lib/oci/load_balancer/models/create_backend_details.rb +4 -4
  39. data/lib/oci/load_balancer/models/create_backend_set_details.rb +1 -1
  40. data/lib/oci/load_balancer/models/create_certificate_details.rb +5 -7
  41. data/lib/oci/load_balancer/models/create_hostname_details.rb +164 -0
  42. data/lib/oci/load_balancer/models/create_listener_details.rb +19 -5
  43. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +12 -3
  44. data/lib/oci/load_balancer/models/create_path_route_set_details.rb +1 -1
  45. data/lib/oci/load_balancer/models/health_check_result.rb +2 -2
  46. data/lib/oci/load_balancer/models/health_checker.rb +3 -3
  47. data/lib/oci/load_balancer/models/health_checker_details.rb +3 -3
  48. data/lib/oci/load_balancer/models/hostname.rb +164 -0
  49. data/lib/oci/load_balancer/models/hostname_details.rb +163 -0
  50. data/lib/oci/load_balancer/models/ip_address.rb +1 -1
  51. data/lib/oci/load_balancer/models/listener.rb +19 -5
  52. data/lib/oci/load_balancer/models/listener_details.rb +17 -3
  53. data/lib/oci/load_balancer/models/load_balancer.rb +13 -2
  54. data/lib/oci/load_balancer/models/load_balancer_health.rb +3 -3
  55. data/lib/oci/load_balancer/models/load_balancer_policy.rb +4 -1
  56. data/lib/oci/load_balancer/models/load_balancer_protocol.rb +5 -2
  57. data/lib/oci/load_balancer/models/load_balancer_shape.rb +3 -0
  58. data/lib/oci/load_balancer/models/path_route.rb +1 -1
  59. data/lib/oci/load_balancer/models/path_route_set.rb +1 -1
  60. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +2 -2
  61. data/lib/oci/load_balancer/models/ssl_configuration.rb +1 -1
  62. data/lib/oci/load_balancer/models/ssl_configuration_details.rb +1 -1
  63. data/lib/oci/load_balancer/models/update_backend_details.rb +3 -3
  64. data/lib/oci/load_balancer/models/update_health_checker_details.rb +3 -3
  65. data/lib/oci/load_balancer/models/update_hostname_details.rb +153 -0
  66. data/lib/oci/load_balancer/models/update_listener_details.rb +17 -3
  67. data/lib/oci/load_balancer/models/update_load_balancer_details.rb +1 -1
  68. data/lib/oci/load_balancer/models/work_request.rb +2 -0
  69. data/lib/oci/object_storage/object_storage_client.rb +443 -270
  70. data/lib/oci/retry/functions/should_retry_on_error.rb +28 -0
  71. data/lib/oci/retry/functions/sleep.rb +85 -0
  72. data/lib/oci/retry/internal/retry_state.rb +48 -0
  73. data/lib/oci/retry/retry.rb +85 -0
  74. data/lib/oci/retry/retry_config.rb +121 -0
  75. data/lib/oci/version.rb +1 -1
  76. metadata +39 -4
@@ -15,6 +15,12 @@ module OCI
15
15
  # @return [String]
16
16
  attr_reader :endpoint
17
17
 
18
+ # The default retry configuration to apply to all operations in this service client. This can be overridden
19
+ # on a per-operation basis. The default retry configuration value is `nil`, which means that an operation
20
+ # will not perform any retries
21
+ # @return [OCI::Retry::RetryConfig]
22
+ attr_reader :retry_config
23
+
18
24
  # The region, which will usually correspond to a value in {OCI::Regions::REGION_ENUM}.
19
25
  # @return [String]
20
26
  attr_reader :region
@@ -36,7 +42,10 @@ module OCI
36
42
  # so that the instance principals signer can be provided to the client
37
43
  # @param [OCI::ApiClientProxySettings] proxy_settings If your environment requires you to use a proxy server for outgoing HTTP requests
38
44
  # the details for the proxy can be provided in this parameter
39
- def initialize(config: nil, region: nil, signer: nil, proxy_settings: nil)
45
+ # @param [OCI::Retry::RetryConfig] retry_config The retry configuration for this service client. This represents the default retry configuration to
46
+ # apply across all operations. This can be overridden on a per-operation basis. The default retry configuration value is `nil`, which means that an operation
47
+ # will not perform any retries
48
+ def initialize(config: nil, region: nil, signer: nil, proxy_settings: nil, retry_config: nil)
40
49
  # If the signer is an InstancePrincipalsSecurityTokenSigner and no config was supplied (which is valid for instance principals)
41
50
  # then create a dummy config to pass to the ApiClient constructor. If customers wish to create a client which uses instance principals
42
51
  # and has config (either populated programmatically or loaded from a file), they must construct that config themselves and then
@@ -60,6 +69,7 @@ module OCI
60
69
  end
61
70
 
62
71
  @api_client = OCI::ApiClient.new(config, signer, proxy_settings: proxy_settings)
72
+ @retry_config = retry_config
63
73
 
64
74
  region ||= config.region
65
75
  region ||= signer.region if signer.respond_to?(:region)
@@ -93,6 +103,8 @@ module OCI
93
103
  # Creates a sender for a tenancy in a given compartment.
94
104
  # @param [OCI::Email::Models::CreateSenderDetails] create_sender_details Create a sender.
95
105
  # @param [Hash] opts the optional parameters
106
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
107
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
96
108
  # @return [Response] A Response object with data of type {OCI::Email::Models::Sender Sender}
97
109
  def create_sender(create_sender_details, opts = {})
98
110
  logger.debug 'Calling operation EmailClient#create_sender.' if logger
@@ -112,16 +124,20 @@ module OCI
112
124
 
113
125
  post_body = @api_client.object_to_http_body(create_sender_details)
114
126
 
115
- @api_client.call_api(
116
- :POST,
117
- path,
118
- endpoint,
119
- header_params: header_params,
120
- query_params: query_params,
121
- operation_signing_strategy: operation_signing_strategy,
122
- body: post_body,
123
- return_type: 'OCI::Email::Models::Sender'
124
- )
127
+ # rubocop:disable Metrics/BlockLength
128
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'EmailClient#create_sender') do
129
+ @api_client.call_api(
130
+ :POST,
131
+ path,
132
+ endpoint,
133
+ header_params: header_params,
134
+ query_params: query_params,
135
+ operation_signing_strategy: operation_signing_strategy,
136
+ body: post_body,
137
+ return_type: 'OCI::Email::Models::Sender'
138
+ )
139
+ end
140
+ # rubocop:enable Metrics/BlockLength
125
141
  end
126
142
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
127
143
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -139,6 +155,8 @@ module OCI
139
155
  # @param [OCI::Email::Models::CreateSuppressionDetails] create_suppression_details Adds a single email address to the suppression list for a compartment's tenancy.
140
156
  #
141
157
  # @param [Hash] opts the optional parameters
158
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
159
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
142
160
  # @return [Response] A Response object with data of type {OCI::Email::Models::Suppression Suppression}
143
161
  def create_suppression(create_suppression_details, opts = {})
144
162
  logger.debug 'Calling operation EmailClient#create_suppression.' if logger
@@ -158,16 +176,20 @@ module OCI
158
176
 
159
177
  post_body = @api_client.object_to_http_body(create_suppression_details)
160
178
 
161
- @api_client.call_api(
162
- :POST,
163
- path,
164
- endpoint,
165
- header_params: header_params,
166
- query_params: query_params,
167
- operation_signing_strategy: operation_signing_strategy,
168
- body: post_body,
169
- return_type: 'OCI::Email::Models::Suppression'
170
- )
179
+ # rubocop:disable Metrics/BlockLength
180
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'EmailClient#create_suppression') do
181
+ @api_client.call_api(
182
+ :POST,
183
+ path,
184
+ endpoint,
185
+ header_params: header_params,
186
+ query_params: query_params,
187
+ operation_signing_strategy: operation_signing_strategy,
188
+ body: post_body,
189
+ return_type: 'OCI::Email::Models::Suppression'
190
+ )
191
+ end
192
+ # rubocop:enable Metrics/BlockLength
171
193
  end
172
194
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
173
195
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -185,6 +207,8 @@ module OCI
185
207
  #
186
208
  # @param [String] sender_id The unique OCID of the sender.
187
209
  # @param [Hash] opts the optional parameters
210
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
211
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
188
212
  # @return [Response] A Response object with data of type nil
189
213
  def delete_sender(sender_id, opts = {})
190
214
  logger.debug 'Calling operation EmailClient#delete_sender.' if logger
@@ -205,15 +229,19 @@ module OCI
205
229
 
206
230
  post_body = nil
207
231
 
208
- @api_client.call_api(
209
- :DELETE,
210
- path,
211
- endpoint,
212
- header_params: header_params,
213
- query_params: query_params,
214
- operation_signing_strategy: operation_signing_strategy,
215
- body: post_body
216
- )
232
+ # rubocop:disable Metrics/BlockLength
233
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'EmailClient#delete_sender') do
234
+ @api_client.call_api(
235
+ :DELETE,
236
+ path,
237
+ endpoint,
238
+ header_params: header_params,
239
+ query_params: query_params,
240
+ operation_signing_strategy: operation_signing_strategy,
241
+ body: post_body
242
+ )
243
+ end
244
+ # rubocop:enable Metrics/BlockLength
217
245
  end
218
246
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
219
247
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -231,6 +259,8 @@ module OCI
231
259
  #
232
260
  # @param [String] suppression_id The unique OCID of the suppression.
233
261
  # @param [Hash] opts the optional parameters
262
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
263
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
234
264
  # @return [Response] A Response object with data of type nil
235
265
  def delete_suppression(suppression_id, opts = {})
236
266
  logger.debug 'Calling operation EmailClient#delete_suppression.' if logger
@@ -251,15 +281,19 @@ module OCI
251
281
 
252
282
  post_body = nil
253
283
 
254
- @api_client.call_api(
255
- :DELETE,
256
- path,
257
- endpoint,
258
- header_params: header_params,
259
- query_params: query_params,
260
- operation_signing_strategy: operation_signing_strategy,
261
- body: post_body
262
- )
284
+ # rubocop:disable Metrics/BlockLength
285
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'EmailClient#delete_suppression') do
286
+ @api_client.call_api(
287
+ :DELETE,
288
+ path,
289
+ endpoint,
290
+ header_params: header_params,
291
+ query_params: query_params,
292
+ operation_signing_strategy: operation_signing_strategy,
293
+ body: post_body
294
+ )
295
+ end
296
+ # rubocop:enable Metrics/BlockLength
263
297
  end
264
298
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
265
299
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -275,6 +309,8 @@ module OCI
275
309
  # Gets an approved sender for a given `senderId`.
276
310
  # @param [String] sender_id The unique OCID of the sender.
277
311
  # @param [Hash] opts the optional parameters
312
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
313
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
278
314
  # @return [Response] A Response object with data of type {OCI::Email::Models::Sender Sender}
279
315
  def get_sender(sender_id, opts = {})
280
316
  logger.debug 'Calling operation EmailClient#get_sender.' if logger
@@ -295,16 +331,20 @@ module OCI
295
331
 
296
332
  post_body = nil
297
333
 
298
- @api_client.call_api(
299
- :GET,
300
- path,
301
- endpoint,
302
- header_params: header_params,
303
- query_params: query_params,
304
- operation_signing_strategy: operation_signing_strategy,
305
- body: post_body,
306
- return_type: 'OCI::Email::Models::Sender'
307
- )
334
+ # rubocop:disable Metrics/BlockLength
335
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'EmailClient#get_sender') do
336
+ @api_client.call_api(
337
+ :GET,
338
+ path,
339
+ endpoint,
340
+ header_params: header_params,
341
+ query_params: query_params,
342
+ operation_signing_strategy: operation_signing_strategy,
343
+ body: post_body,
344
+ return_type: 'OCI::Email::Models::Sender'
345
+ )
346
+ end
347
+ # rubocop:enable Metrics/BlockLength
308
348
  end
309
349
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
310
350
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -322,6 +362,8 @@ module OCI
322
362
  #
323
363
  # @param [String] suppression_id The unique OCID of the suppression.
324
364
  # @param [Hash] opts the optional parameters
365
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
366
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
325
367
  # @return [Response] A Response object with data of type {OCI::Email::Models::Suppression Suppression}
326
368
  def get_suppression(suppression_id, opts = {})
327
369
  logger.debug 'Calling operation EmailClient#get_suppression.' if logger
@@ -342,16 +384,20 @@ module OCI
342
384
 
343
385
  post_body = nil
344
386
 
345
- @api_client.call_api(
346
- :GET,
347
- path,
348
- endpoint,
349
- header_params: header_params,
350
- query_params: query_params,
351
- operation_signing_strategy: operation_signing_strategy,
352
- body: post_body,
353
- return_type: 'OCI::Email::Models::Suppression'
354
- )
387
+ # rubocop:disable Metrics/BlockLength
388
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'EmailClient#get_suppression') do
389
+ @api_client.call_api(
390
+ :GET,
391
+ path,
392
+ endpoint,
393
+ header_params: header_params,
394
+ query_params: query_params,
395
+ operation_signing_strategy: operation_signing_strategy,
396
+ body: post_body,
397
+ return_type: 'OCI::Email::Models::Suppression'
398
+ )
399
+ end
400
+ # rubocop:enable Metrics/BlockLength
355
401
  end
356
402
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
357
403
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -367,6 +413,8 @@ module OCI
367
413
  #
368
414
  # @param [String] compartment_id The OCID for the compartment.
369
415
  # @param [Hash] opts the optional parameters
416
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
417
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
370
418
  # @option opts [String] :lifecycle_state The current state of a sender.
371
419
  # @option opts [String] :email_address The email address of the approved sender.
372
420
  # @option opts [String] :page The value of the `opc-next-page` response header from the previous
@@ -421,16 +469,20 @@ module OCI
421
469
 
422
470
  post_body = nil
423
471
 
424
- @api_client.call_api(
425
- :GET,
426
- path,
427
- endpoint,
428
- header_params: header_params,
429
- query_params: query_params,
430
- operation_signing_strategy: operation_signing_strategy,
431
- body: post_body,
432
- return_type: 'Array<OCI::Email::Models::SenderSummary>'
433
- )
472
+ # rubocop:disable Metrics/BlockLength
473
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'EmailClient#list_senders') do
474
+ @api_client.call_api(
475
+ :GET,
476
+ path,
477
+ endpoint,
478
+ header_params: header_params,
479
+ query_params: query_params,
480
+ operation_signing_strategy: operation_signing_strategy,
481
+ body: post_body,
482
+ return_type: 'Array<OCI::Email::Models::SenderSummary>'
483
+ )
484
+ end
485
+ # rubocop:enable Metrics/BlockLength
434
486
  end
435
487
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
436
488
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -447,6 +499,8 @@ module OCI
447
499
  #
448
500
  # @param [String] compartment_id The OCID for the compartment.
449
501
  # @param [Hash] opts the optional parameters
502
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
503
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
450
504
  # @option opts [String] :email_address The email address of the suppression.
451
505
  # @option opts [DateTime] :time_created_greater_than_or_equal_to Search for suppressions that were created within a specific date range,
452
506
  # using this parameter to specify the earliest creation date for the
@@ -515,20 +569,31 @@ module OCI
515
569
 
516
570
  post_body = nil
517
571
 
518
- @api_client.call_api(
519
- :GET,
520
- path,
521
- endpoint,
522
- header_params: header_params,
523
- query_params: query_params,
524
- operation_signing_strategy: operation_signing_strategy,
525
- body: post_body,
526
- return_type: 'Array<OCI::Email::Models::SuppressionSummary>'
527
- )
572
+ # rubocop:disable Metrics/BlockLength
573
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'EmailClient#list_suppressions') do
574
+ @api_client.call_api(
575
+ :GET,
576
+ path,
577
+ endpoint,
578
+ header_params: header_params,
579
+ query_params: query_params,
580
+ operation_signing_strategy: operation_signing_strategy,
581
+ body: post_body,
582
+ return_type: 'Array<OCI::Email::Models::SuppressionSummary>'
583
+ )
584
+ end
585
+ # rubocop:enable Metrics/BlockLength
528
586
  end
529
587
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
530
588
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
531
589
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
590
+
591
+ private
592
+
593
+ def applicable_retry_config(opts = {})
594
+ return @retry_config unless opts.key?(:retry_config)
595
+ opts[:retry_config]
596
+ end
532
597
  end
533
598
  end
534
599
  # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -17,6 +17,12 @@ module OCI
17
17
  # @return [String]
18
18
  attr_reader :endpoint
19
19
 
20
+ # The default retry configuration to apply to all operations in this service client. This can be overridden
21
+ # on a per-operation basis. The default retry configuration value is `nil`, which means that an operation
22
+ # will not perform any retries
23
+ # @return [OCI::Retry::RetryConfig]
24
+ attr_reader :retry_config
25
+
20
26
  # The region, which will usually correspond to a value in {OCI::Regions::REGION_ENUM}.
21
27
  # @return [String]
22
28
  attr_reader :region
@@ -38,7 +44,10 @@ module OCI
38
44
  # so that the instance principals signer can be provided to the client
39
45
  # @param [OCI::ApiClientProxySettings] proxy_settings If your environment requires you to use a proxy server for outgoing HTTP requests
40
46
  # the details for the proxy can be provided in this parameter
41
- def initialize(config: nil, region: nil, signer: nil, proxy_settings: nil)
47
+ # @param [OCI::Retry::RetryConfig] retry_config The retry configuration for this service client. This represents the default retry configuration to
48
+ # apply across all operations. This can be overridden on a per-operation basis. The default retry configuration value is `nil`, which means that an operation
49
+ # will not perform any retries
50
+ def initialize(config: nil, region: nil, signer: nil, proxy_settings: nil, retry_config: nil)
42
51
  # If the signer is an InstancePrincipalsSecurityTokenSigner and no config was supplied (which is valid for instance principals)
43
52
  # then create a dummy config to pass to the ApiClient constructor. If customers wish to create a client which uses instance principals
44
53
  # and has config (either populated programmatically or loaded from a file), they must construct that config themselves and then
@@ -62,6 +71,7 @@ module OCI
62
71
  end
63
72
 
64
73
  @api_client = OCI::ApiClient.new(config, signer, proxy_settings: proxy_settings)
74
+ @retry_config = retry_config
65
75
 
66
76
  region ||= config.region
67
77
  region ||= signer.region if signer.respond_to?(:region)
@@ -96,6 +106,8 @@ module OCI
96
106
  #
97
107
  # @param [OCI::FileStorage::Models::CreateExportDetails] create_export_details Details for creating a new export.
98
108
  # @param [Hash] opts the optional parameters
109
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
110
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
99
111
  # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
100
112
  # server error without risk of executing that same action again. Retry tokens expire after 24
101
113
  # hours, but can be invalidated before then due to conflicting operations. For example, if a resource
@@ -119,19 +131,24 @@ module OCI
119
131
  header_params['accept'] = 'application/json'
120
132
  header_params['content-type'] = 'application/json'
121
133
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
134
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
122
135
 
123
136
  post_body = @api_client.object_to_http_body(create_export_details)
124
137
 
125
- @api_client.call_api(
126
- :POST,
127
- path,
128
- endpoint,
129
- header_params: header_params,
130
- query_params: query_params,
131
- operation_signing_strategy: operation_signing_strategy,
132
- body: post_body,
133
- return_type: 'OCI::FileStorage::Models::Export'
134
- )
138
+ # rubocop:disable Metrics/BlockLength
139
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#create_export') do
140
+ @api_client.call_api(
141
+ :POST,
142
+ path,
143
+ endpoint,
144
+ header_params: header_params,
145
+ query_params: query_params,
146
+ operation_signing_strategy: operation_signing_strategy,
147
+ body: post_body,
148
+ return_type: 'OCI::FileStorage::Models::Export'
149
+ )
150
+ end
151
+ # rubocop:enable Metrics/BlockLength
135
152
  end
136
153
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
137
154
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -171,6 +188,8 @@ module OCI
171
188
  #
172
189
  # @param [OCI::FileStorage::Models::CreateFileSystemDetails] create_file_system_details Details for creating a new file system.
173
190
  # @param [Hash] opts the optional parameters
191
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
192
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
174
193
  # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
175
194
  # server error without risk of executing that same action again. Retry tokens expire after 24
176
195
  # hours, but can be invalidated before then due to conflicting operations. For example, if a resource
@@ -194,19 +213,24 @@ module OCI
194
213
  header_params['accept'] = 'application/json'
195
214
  header_params['content-type'] = 'application/json'
196
215
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
216
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
197
217
 
198
218
  post_body = @api_client.object_to_http_body(create_file_system_details)
199
219
 
200
- @api_client.call_api(
201
- :POST,
202
- path,
203
- endpoint,
204
- header_params: header_params,
205
- query_params: query_params,
206
- operation_signing_strategy: operation_signing_strategy,
207
- body: post_body,
208
- return_type: 'OCI::FileStorage::Models::FileSystem'
209
- )
220
+ # rubocop:disable Metrics/BlockLength
221
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#create_file_system') do
222
+ @api_client.call_api(
223
+ :POST,
224
+ path,
225
+ endpoint,
226
+ header_params: header_params,
227
+ query_params: query_params,
228
+ operation_signing_strategy: operation_signing_strategy,
229
+ body: post_body,
230
+ return_type: 'OCI::FileStorage::Models::FileSystem'
231
+ )
232
+ end
233
+ # rubocop:enable Metrics/BlockLength
210
234
  end
211
235
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
212
236
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -249,6 +273,8 @@ module OCI
249
273
  #
250
274
  # @param [OCI::FileStorage::Models::CreateMountTargetDetails] create_mount_target_details Details for creating a new mount target.
251
275
  # @param [Hash] opts the optional parameters
276
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
277
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
252
278
  # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
253
279
  # server error without risk of executing that same action again. Retry tokens expire after 24
254
280
  # hours, but can be invalidated before then due to conflicting operations. For example, if a resource
@@ -272,19 +298,24 @@ module OCI
272
298
  header_params['accept'] = 'application/json'
273
299
  header_params['content-type'] = 'application/json'
274
300
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
301
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
275
302
 
276
303
  post_body = @api_client.object_to_http_body(create_mount_target_details)
277
304
 
278
- @api_client.call_api(
279
- :POST,
280
- path,
281
- endpoint,
282
- header_params: header_params,
283
- query_params: query_params,
284
- operation_signing_strategy: operation_signing_strategy,
285
- body: post_body,
286
- return_type: 'OCI::FileStorage::Models::MountTarget'
287
- )
305
+ # rubocop:disable Metrics/BlockLength
306
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#create_mount_target') do
307
+ @api_client.call_api(
308
+ :POST,
309
+ path,
310
+ endpoint,
311
+ header_params: header_params,
312
+ query_params: query_params,
313
+ operation_signing_strategy: operation_signing_strategy,
314
+ body: post_body,
315
+ return_type: 'OCI::FileStorage::Models::MountTarget'
316
+ )
317
+ end
318
+ # rubocop:enable Metrics/BlockLength
288
319
  end
289
320
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
290
321
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -300,6 +331,8 @@ module OCI
300
331
  #
301
332
  # @param [OCI::FileStorage::Models::CreateSnapshotDetails] create_snapshot_details Details for creating a new snapshot.
302
333
  # @param [Hash] opts the optional parameters
334
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
335
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
303
336
  # @option opts [String] :opc_retry_token A token that uniquely identifies a request so it can be retried in case of a timeout or
304
337
  # server error without risk of executing that same action again. Retry tokens expire after 24
305
338
  # hours, but can be invalidated before then due to conflicting operations. For example, if a resource
@@ -323,19 +356,24 @@ module OCI
323
356
  header_params['accept'] = 'application/json'
324
357
  header_params['content-type'] = 'application/json'
325
358
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
359
+ header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token
326
360
 
327
361
  post_body = @api_client.object_to_http_body(create_snapshot_details)
328
362
 
329
- @api_client.call_api(
330
- :POST,
331
- path,
332
- endpoint,
333
- header_params: header_params,
334
- query_params: query_params,
335
- operation_signing_strategy: operation_signing_strategy,
336
- body: post_body,
337
- return_type: 'OCI::FileStorage::Models::Snapshot'
338
- )
363
+ # rubocop:disable Metrics/BlockLength
364
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#create_snapshot') do
365
+ @api_client.call_api(
366
+ :POST,
367
+ path,
368
+ endpoint,
369
+ header_params: header_params,
370
+ query_params: query_params,
371
+ operation_signing_strategy: operation_signing_strategy,
372
+ body: post_body,
373
+ return_type: 'OCI::FileStorage::Models::Snapshot'
374
+ )
375
+ end
376
+ # rubocop:enable Metrics/BlockLength
339
377
  end
340
378
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
341
379
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -350,6 +388,8 @@ module OCI
350
388
  #
351
389
  # @param [String] export_id The OCID of the export.
352
390
  # @param [Hash] opts the optional parameters
391
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
392
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
353
393
  # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call
354
394
  # for a resource, set the `if-match` parameter to the value of the
355
395
  # etag from a previous GET or POST response for that resource.
@@ -377,15 +417,19 @@ module OCI
377
417
 
378
418
  post_body = nil
379
419
 
380
- @api_client.call_api(
381
- :DELETE,
382
- path,
383
- endpoint,
384
- header_params: header_params,
385
- query_params: query_params,
386
- operation_signing_strategy: operation_signing_strategy,
387
- body: post_body
388
- )
420
+ # rubocop:disable Metrics/BlockLength
421
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#delete_export') do
422
+ @api_client.call_api(
423
+ :DELETE,
424
+ path,
425
+ endpoint,
426
+ header_params: header_params,
427
+ query_params: query_params,
428
+ operation_signing_strategy: operation_signing_strategy,
429
+ body: post_body
430
+ )
431
+ end
432
+ # rubocop:enable Metrics/BlockLength
389
433
  end
390
434
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
391
435
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -402,6 +446,8 @@ module OCI
402
446
  #
403
447
  # @param [String] file_system_id The OCID of the file system.
404
448
  # @param [Hash] opts the optional parameters
449
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
450
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
405
451
  # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call
406
452
  # for a resource, set the `if-match` parameter to the value of the
407
453
  # etag from a previous GET or POST response for that resource.
@@ -429,15 +475,19 @@ module OCI
429
475
 
430
476
  post_body = nil
431
477
 
432
- @api_client.call_api(
433
- :DELETE,
434
- path,
435
- endpoint,
436
- header_params: header_params,
437
- query_params: query_params,
438
- operation_signing_strategy: operation_signing_strategy,
439
- body: post_body
440
- )
478
+ # rubocop:disable Metrics/BlockLength
479
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#delete_file_system') do
480
+ @api_client.call_api(
481
+ :DELETE,
482
+ path,
483
+ endpoint,
484
+ header_params: header_params,
485
+ query_params: query_params,
486
+ operation_signing_strategy: operation_signing_strategy,
487
+ body: post_body
488
+ )
489
+ end
490
+ # rubocop:enable Metrics/BlockLength
441
491
  end
442
492
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
443
493
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -453,6 +503,8 @@ module OCI
453
503
  #
454
504
  # @param [String] mount_target_id The OCID of the mount target.
455
505
  # @param [Hash] opts the optional parameters
506
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
507
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
456
508
  # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call
457
509
  # for a resource, set the `if-match` parameter to the value of the
458
510
  # etag from a previous GET or POST response for that resource.
@@ -480,15 +532,19 @@ module OCI
480
532
 
481
533
  post_body = nil
482
534
 
483
- @api_client.call_api(
484
- :DELETE,
485
- path,
486
- endpoint,
487
- header_params: header_params,
488
- query_params: query_params,
489
- operation_signing_strategy: operation_signing_strategy,
490
- body: post_body
491
- )
535
+ # rubocop:disable Metrics/BlockLength
536
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#delete_mount_target') do
537
+ @api_client.call_api(
538
+ :DELETE,
539
+ path,
540
+ endpoint,
541
+ header_params: header_params,
542
+ query_params: query_params,
543
+ operation_signing_strategy: operation_signing_strategy,
544
+ body: post_body
545
+ )
546
+ end
547
+ # rubocop:enable Metrics/BlockLength
492
548
  end
493
549
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
494
550
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -503,6 +559,8 @@ module OCI
503
559
  #
504
560
  # @param [String] snapshot_id The OCID of the snapshot.
505
561
  # @param [Hash] opts the optional parameters
562
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
563
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
506
564
  # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call
507
565
  # for a resource, set the `if-match` parameter to the value of the
508
566
  # etag from a previous GET or POST response for that resource.
@@ -530,15 +588,19 @@ module OCI
530
588
 
531
589
  post_body = nil
532
590
 
533
- @api_client.call_api(
534
- :DELETE,
535
- path,
536
- endpoint,
537
- header_params: header_params,
538
- query_params: query_params,
539
- operation_signing_strategy: operation_signing_strategy,
540
- body: post_body
541
- )
591
+ # rubocop:disable Metrics/BlockLength
592
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#delete_snapshot') do
593
+ @api_client.call_api(
594
+ :DELETE,
595
+ path,
596
+ endpoint,
597
+ header_params: header_params,
598
+ query_params: query_params,
599
+ operation_signing_strategy: operation_signing_strategy,
600
+ body: post_body
601
+ )
602
+ end
603
+ # rubocop:enable Metrics/BlockLength
542
604
  end
543
605
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
544
606
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -553,6 +615,8 @@ module OCI
553
615
  # Gets the specified export's information.
554
616
  # @param [String] export_id The OCID of the export.
555
617
  # @param [Hash] opts the optional parameters
618
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
619
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
556
620
  # @return [Response] A Response object with data of type {OCI::FileStorage::Models::Export Export}
557
621
  def get_export(export_id, opts = {})
558
622
  logger.debug 'Calling operation FileStorageClient#get_export.' if logger
@@ -573,16 +637,20 @@ module OCI
573
637
 
574
638
  post_body = nil
575
639
 
576
- @api_client.call_api(
577
- :GET,
578
- path,
579
- endpoint,
580
- header_params: header_params,
581
- query_params: query_params,
582
- operation_signing_strategy: operation_signing_strategy,
583
- body: post_body,
584
- return_type: 'OCI::FileStorage::Models::Export'
585
- )
640
+ # rubocop:disable Metrics/BlockLength
641
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#get_export') do
642
+ @api_client.call_api(
643
+ :GET,
644
+ path,
645
+ endpoint,
646
+ header_params: header_params,
647
+ query_params: query_params,
648
+ operation_signing_strategy: operation_signing_strategy,
649
+ body: post_body,
650
+ return_type: 'OCI::FileStorage::Models::Export'
651
+ )
652
+ end
653
+ # rubocop:enable Metrics/BlockLength
586
654
  end
587
655
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
588
656
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -598,6 +666,8 @@ module OCI
598
666
  # Gets the specified export set's information.
599
667
  # @param [String] export_set_id The OCID of the export set.
600
668
  # @param [Hash] opts the optional parameters
669
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
670
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
601
671
  # @return [Response] A Response object with data of type {OCI::FileStorage::Models::ExportSet ExportSet}
602
672
  def get_export_set(export_set_id, opts = {})
603
673
  logger.debug 'Calling operation FileStorageClient#get_export_set.' if logger
@@ -618,16 +688,20 @@ module OCI
618
688
 
619
689
  post_body = nil
620
690
 
621
- @api_client.call_api(
622
- :GET,
623
- path,
624
- endpoint,
625
- header_params: header_params,
626
- query_params: query_params,
627
- operation_signing_strategy: operation_signing_strategy,
628
- body: post_body,
629
- return_type: 'OCI::FileStorage::Models::ExportSet'
630
- )
691
+ # rubocop:disable Metrics/BlockLength
692
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#get_export_set') do
693
+ @api_client.call_api(
694
+ :GET,
695
+ path,
696
+ endpoint,
697
+ header_params: header_params,
698
+ query_params: query_params,
699
+ operation_signing_strategy: operation_signing_strategy,
700
+ body: post_body,
701
+ return_type: 'OCI::FileStorage::Models::ExportSet'
702
+ )
703
+ end
704
+ # rubocop:enable Metrics/BlockLength
631
705
  end
632
706
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
633
707
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -643,6 +717,8 @@ module OCI
643
717
  # Gets the specified file system's information.
644
718
  # @param [String] file_system_id The OCID of the file system.
645
719
  # @param [Hash] opts the optional parameters
720
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
721
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
646
722
  # @return [Response] A Response object with data of type {OCI::FileStorage::Models::FileSystem FileSystem}
647
723
  def get_file_system(file_system_id, opts = {})
648
724
  logger.debug 'Calling operation FileStorageClient#get_file_system.' if logger
@@ -663,16 +739,20 @@ module OCI
663
739
 
664
740
  post_body = nil
665
741
 
666
- @api_client.call_api(
667
- :GET,
668
- path,
669
- endpoint,
670
- header_params: header_params,
671
- query_params: query_params,
672
- operation_signing_strategy: operation_signing_strategy,
673
- body: post_body,
674
- return_type: 'OCI::FileStorage::Models::FileSystem'
675
- )
742
+ # rubocop:disable Metrics/BlockLength
743
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#get_file_system') do
744
+ @api_client.call_api(
745
+ :GET,
746
+ path,
747
+ endpoint,
748
+ header_params: header_params,
749
+ query_params: query_params,
750
+ operation_signing_strategy: operation_signing_strategy,
751
+ body: post_body,
752
+ return_type: 'OCI::FileStorage::Models::FileSystem'
753
+ )
754
+ end
755
+ # rubocop:enable Metrics/BlockLength
676
756
  end
677
757
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
678
758
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -688,6 +768,8 @@ module OCI
688
768
  # Gets the specified mount target's information.
689
769
  # @param [String] mount_target_id The OCID of the mount target.
690
770
  # @param [Hash] opts the optional parameters
771
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
772
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
691
773
  # @return [Response] A Response object with data of type {OCI::FileStorage::Models::MountTarget MountTarget}
692
774
  def get_mount_target(mount_target_id, opts = {})
693
775
  logger.debug 'Calling operation FileStorageClient#get_mount_target.' if logger
@@ -708,16 +790,20 @@ module OCI
708
790
 
709
791
  post_body = nil
710
792
 
711
- @api_client.call_api(
712
- :GET,
713
- path,
714
- endpoint,
715
- header_params: header_params,
716
- query_params: query_params,
717
- operation_signing_strategy: operation_signing_strategy,
718
- body: post_body,
719
- return_type: 'OCI::FileStorage::Models::MountTarget'
720
- )
793
+ # rubocop:disable Metrics/BlockLength
794
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#get_mount_target') do
795
+ @api_client.call_api(
796
+ :GET,
797
+ path,
798
+ endpoint,
799
+ header_params: header_params,
800
+ query_params: query_params,
801
+ operation_signing_strategy: operation_signing_strategy,
802
+ body: post_body,
803
+ return_type: 'OCI::FileStorage::Models::MountTarget'
804
+ )
805
+ end
806
+ # rubocop:enable Metrics/BlockLength
721
807
  end
722
808
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
723
809
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -733,6 +819,8 @@ module OCI
733
819
  # Gets the specified snapshot's information.
734
820
  # @param [String] snapshot_id The OCID of the snapshot.
735
821
  # @param [Hash] opts the optional parameters
822
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
823
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
736
824
  # @return [Response] A Response object with data of type {OCI::FileStorage::Models::Snapshot Snapshot}
737
825
  def get_snapshot(snapshot_id, opts = {})
738
826
  logger.debug 'Calling operation FileStorageClient#get_snapshot.' if logger
@@ -753,16 +841,20 @@ module OCI
753
841
 
754
842
  post_body = nil
755
843
 
756
- @api_client.call_api(
757
- :GET,
758
- path,
759
- endpoint,
760
- header_params: header_params,
761
- query_params: query_params,
762
- operation_signing_strategy: operation_signing_strategy,
763
- body: post_body,
764
- return_type: 'OCI::FileStorage::Models::Snapshot'
765
- )
844
+ # rubocop:disable Metrics/BlockLength
845
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#get_snapshot') do
846
+ @api_client.call_api(
847
+ :GET,
848
+ path,
849
+ endpoint,
850
+ header_params: header_params,
851
+ query_params: query_params,
852
+ operation_signing_strategy: operation_signing_strategy,
853
+ body: post_body,
854
+ return_type: 'OCI::FileStorage::Models::Snapshot'
855
+ )
856
+ end
857
+ # rubocop:enable Metrics/BlockLength
766
858
  end
767
859
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
768
860
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -782,6 +874,8 @@ module OCI
782
874
  # Example: `Uocm:PHX-AD-1`
783
875
  #
784
876
  # @param [Hash] opts the optional parameters
877
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
878
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
785
879
  # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
786
880
  #
787
881
  # Example: `500`
@@ -850,16 +944,20 @@ module OCI
850
944
 
851
945
  post_body = nil
852
946
 
853
- @api_client.call_api(
854
- :GET,
855
- path,
856
- endpoint,
857
- header_params: header_params,
858
- query_params: query_params,
859
- operation_signing_strategy: operation_signing_strategy,
860
- body: post_body,
861
- return_type: 'Array<OCI::FileStorage::Models::ExportSetSummary>'
862
- )
947
+ # rubocop:disable Metrics/BlockLength
948
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#list_export_sets') do
949
+ @api_client.call_api(
950
+ :GET,
951
+ path,
952
+ endpoint,
953
+ header_params: header_params,
954
+ query_params: query_params,
955
+ operation_signing_strategy: operation_signing_strategy,
956
+ body: post_body,
957
+ return_type: 'Array<OCI::FileStorage::Models::ExportSetSummary>'
958
+ )
959
+ end
960
+ # rubocop:enable Metrics/BlockLength
863
961
  end
864
962
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
865
963
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -875,6 +973,8 @@ module OCI
875
973
  #
876
974
  # @param [String] compartment_id The OCID of the compartment.
877
975
  # @param [Hash] opts the optional parameters
976
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
977
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
878
978
  # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
879
979
  #
880
980
  # Example: `500`
@@ -940,16 +1040,20 @@ module OCI
940
1040
 
941
1041
  post_body = nil
942
1042
 
943
- @api_client.call_api(
944
- :GET,
945
- path,
946
- endpoint,
947
- header_params: header_params,
948
- query_params: query_params,
949
- operation_signing_strategy: operation_signing_strategy,
950
- body: post_body,
951
- return_type: 'Array<OCI::FileStorage::Models::ExportSummary>'
952
- )
1043
+ # rubocop:disable Metrics/BlockLength
1044
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#list_exports') do
1045
+ @api_client.call_api(
1046
+ :GET,
1047
+ path,
1048
+ endpoint,
1049
+ header_params: header_params,
1050
+ query_params: query_params,
1051
+ operation_signing_strategy: operation_signing_strategy,
1052
+ body: post_body,
1053
+ return_type: 'Array<OCI::FileStorage::Models::ExportSummary>'
1054
+ )
1055
+ end
1056
+ # rubocop:enable Metrics/BlockLength
953
1057
  end
954
1058
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
955
1059
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -968,6 +1072,8 @@ module OCI
968
1072
  # Example: `Uocm:PHX-AD-1`
969
1073
  #
970
1074
  # @param [Hash] opts the optional parameters
1075
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1076
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
971
1077
  # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
972
1078
  #
973
1079
  # Example: `500`
@@ -1036,16 +1142,20 @@ module OCI
1036
1142
 
1037
1143
  post_body = nil
1038
1144
 
1039
- @api_client.call_api(
1040
- :GET,
1041
- path,
1042
- endpoint,
1043
- header_params: header_params,
1044
- query_params: query_params,
1045
- operation_signing_strategy: operation_signing_strategy,
1046
- body: post_body,
1047
- return_type: 'Array<OCI::FileStorage::Models::FileSystemSummary>'
1048
- )
1145
+ # rubocop:disable Metrics/BlockLength
1146
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#list_file_systems') do
1147
+ @api_client.call_api(
1148
+ :GET,
1149
+ path,
1150
+ endpoint,
1151
+ header_params: header_params,
1152
+ query_params: query_params,
1153
+ operation_signing_strategy: operation_signing_strategy,
1154
+ body: post_body,
1155
+ return_type: 'Array<OCI::FileStorage::Models::FileSystemSummary>'
1156
+ )
1157
+ end
1158
+ # rubocop:enable Metrics/BlockLength
1049
1159
  end
1050
1160
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1051
1161
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -1064,6 +1174,8 @@ module OCI
1064
1174
  # Example: `Uocm:PHX-AD-1`
1065
1175
  #
1066
1176
  # @param [Hash] opts the optional parameters
1177
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1178
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1067
1179
  # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
1068
1180
  #
1069
1181
  # Example: `500`
@@ -1134,16 +1246,20 @@ module OCI
1134
1246
 
1135
1247
  post_body = nil
1136
1248
 
1137
- @api_client.call_api(
1138
- :GET,
1139
- path,
1140
- endpoint,
1141
- header_params: header_params,
1142
- query_params: query_params,
1143
- operation_signing_strategy: operation_signing_strategy,
1144
- body: post_body,
1145
- return_type: 'Array<OCI::FileStorage::Models::MountTargetSummary>'
1146
- )
1249
+ # rubocop:disable Metrics/BlockLength
1250
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#list_mount_targets') do
1251
+ @api_client.call_api(
1252
+ :GET,
1253
+ path,
1254
+ endpoint,
1255
+ header_params: header_params,
1256
+ query_params: query_params,
1257
+ operation_signing_strategy: operation_signing_strategy,
1258
+ body: post_body,
1259
+ return_type: 'Array<OCI::FileStorage::Models::MountTargetSummary>'
1260
+ )
1261
+ end
1262
+ # rubocop:enable Metrics/BlockLength
1147
1263
  end
1148
1264
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1149
1265
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -1158,6 +1274,8 @@ module OCI
1158
1274
  #
1159
1275
  # @param [String] file_system_id The OCID of the file system.
1160
1276
  # @param [Hash] opts the optional parameters
1277
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1278
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1161
1279
  # @option opts [Integer] :limit The maximum number of items to return in a paginated \"List\" call.
1162
1280
  #
1163
1281
  # Example: `500`
@@ -1208,16 +1326,20 @@ module OCI
1208
1326
 
1209
1327
  post_body = nil
1210
1328
 
1211
- @api_client.call_api(
1212
- :GET,
1213
- path,
1214
- endpoint,
1215
- header_params: header_params,
1216
- query_params: query_params,
1217
- operation_signing_strategy: operation_signing_strategy,
1218
- body: post_body,
1219
- return_type: 'Array<OCI::FileStorage::Models::SnapshotSummary>'
1220
- )
1329
+ # rubocop:disable Metrics/BlockLength
1330
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#list_snapshots') do
1331
+ @api_client.call_api(
1332
+ :GET,
1333
+ path,
1334
+ endpoint,
1335
+ header_params: header_params,
1336
+ query_params: query_params,
1337
+ operation_signing_strategy: operation_signing_strategy,
1338
+ body: post_body,
1339
+ return_type: 'Array<OCI::FileStorage::Models::SnapshotSummary>'
1340
+ )
1341
+ end
1342
+ # rubocop:enable Metrics/BlockLength
1221
1343
  end
1222
1344
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1223
1345
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -1232,6 +1354,8 @@ module OCI
1232
1354
  # @param [String] export_set_id The OCID of the export set.
1233
1355
  # @param [OCI::FileStorage::Models::UpdateExportSetDetails] update_export_set_details Details object for updating an export set.
1234
1356
  # @param [Hash] opts the optional parameters
1357
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1358
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1235
1359
  # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call
1236
1360
  # for a resource, set the `if-match` parameter to the value of the
1237
1361
  # etag from a previous GET or POST response for that resource.
@@ -1260,16 +1384,20 @@ module OCI
1260
1384
 
1261
1385
  post_body = @api_client.object_to_http_body(update_export_set_details)
1262
1386
 
1263
- @api_client.call_api(
1264
- :PUT,
1265
- path,
1266
- endpoint,
1267
- header_params: header_params,
1268
- query_params: query_params,
1269
- operation_signing_strategy: operation_signing_strategy,
1270
- body: post_body,
1271
- return_type: 'OCI::FileStorage::Models::ExportSet'
1272
- )
1387
+ # rubocop:disable Metrics/BlockLength
1388
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#update_export_set') do
1389
+ @api_client.call_api(
1390
+ :PUT,
1391
+ path,
1392
+ endpoint,
1393
+ header_params: header_params,
1394
+ query_params: query_params,
1395
+ operation_signing_strategy: operation_signing_strategy,
1396
+ body: post_body,
1397
+ return_type: 'OCI::FileStorage::Models::ExportSet'
1398
+ )
1399
+ end
1400
+ # rubocop:enable Metrics/BlockLength
1273
1401
  end
1274
1402
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1275
1403
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -1286,6 +1414,8 @@ module OCI
1286
1414
  # @param [String] file_system_id The OCID of the file system.
1287
1415
  # @param [OCI::FileStorage::Models::UpdateFileSystemDetails] update_file_system_details Details object for updating a file system.
1288
1416
  # @param [Hash] opts the optional parameters
1417
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1418
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1289
1419
  # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call
1290
1420
  # for a resource, set the `if-match` parameter to the value of the
1291
1421
  # etag from a previous GET or POST response for that resource.
@@ -1314,16 +1444,20 @@ module OCI
1314
1444
 
1315
1445
  post_body = @api_client.object_to_http_body(update_file_system_details)
1316
1446
 
1317
- @api_client.call_api(
1318
- :PUT,
1319
- path,
1320
- endpoint,
1321
- header_params: header_params,
1322
- query_params: query_params,
1323
- operation_signing_strategy: operation_signing_strategy,
1324
- body: post_body,
1325
- return_type: 'OCI::FileStorage::Models::FileSystem'
1326
- )
1447
+ # rubocop:disable Metrics/BlockLength
1448
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#update_file_system') do
1449
+ @api_client.call_api(
1450
+ :PUT,
1451
+ path,
1452
+ endpoint,
1453
+ header_params: header_params,
1454
+ query_params: query_params,
1455
+ operation_signing_strategy: operation_signing_strategy,
1456
+ body: post_body,
1457
+ return_type: 'OCI::FileStorage::Models::FileSystem'
1458
+ )
1459
+ end
1460
+ # rubocop:enable Metrics/BlockLength
1327
1461
  end
1328
1462
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1329
1463
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
@@ -1338,6 +1472,8 @@ module OCI
1338
1472
  # @param [String] mount_target_id The OCID of the mount target.
1339
1473
  # @param [OCI::FileStorage::Models::UpdateMountTargetDetails] update_mount_target_details Details object for updating a mount target.
1340
1474
  # @param [Hash] opts the optional parameters
1475
+ # @option opts [OCI::Retry::RetryConfig] :retry_config The retry configuration to apply to this operation. If no key is provided then the service-level
1476
+ # retry configuration defined by {#retry_config} will be used. If an explicit `nil` value is provided then then operation will not retry
1341
1477
  # @option opts [String] :if_match For optimistic concurrency control. In the PUT or DELETE call
1342
1478
  # for a resource, set the `if-match` parameter to the value of the
1343
1479
  # etag from a previous GET or POST response for that resource.
@@ -1366,20 +1502,31 @@ module OCI
1366
1502
 
1367
1503
  post_body = @api_client.object_to_http_body(update_mount_target_details)
1368
1504
 
1369
- @api_client.call_api(
1370
- :PUT,
1371
- path,
1372
- endpoint,
1373
- header_params: header_params,
1374
- query_params: query_params,
1375
- operation_signing_strategy: operation_signing_strategy,
1376
- body: post_body,
1377
- return_type: 'OCI::FileStorage::Models::MountTarget'
1378
- )
1505
+ # rubocop:disable Metrics/BlockLength
1506
+ OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'FileStorageClient#update_mount_target') do
1507
+ @api_client.call_api(
1508
+ :PUT,
1509
+ path,
1510
+ endpoint,
1511
+ header_params: header_params,
1512
+ query_params: query_params,
1513
+ operation_signing_strategy: operation_signing_strategy,
1514
+ body: post_body,
1515
+ return_type: 'OCI::FileStorage::Models::MountTarget'
1516
+ )
1517
+ end
1518
+ # rubocop:enable Metrics/BlockLength
1379
1519
  end
1380
1520
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
1381
1521
  # rubocop:enable Style/IfUnlessModifier, Metrics/ParameterLists
1382
1522
  # rubocop:enable Metrics/MethodLength, Layout/EmptyLines
1523
+
1524
+ private
1525
+
1526
+ def applicable_retry_config(opts = {})
1527
+ return @retry_config unless opts.key?(:retry_config)
1528
+ opts[:retry_config]
1529
+ end
1383
1530
  end
1384
1531
  end
1385
1532
  # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength