oci 2.1.2 → 2.2.0

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 (55) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +26 -13
  3. data/lib/oci/core/blockstorage_client.rb +690 -61
  4. data/lib/oci/core/blockstorage_client_composite_operations.rb +238 -0
  5. data/lib/oci/core/compute_client.rb +1 -5
  6. data/lib/oci/core/core.rb +10 -0
  7. data/lib/oci/core/models/boot_volume.rb +18 -4
  8. data/lib/oci/core/models/cpe.rb +38 -1
  9. data/lib/oci/core/models/create_cpe_details.rb +38 -1
  10. data/lib/oci/core/models/create_drg_details.rb +41 -4
  11. data/lib/oci/core/models/create_internet_gateway_details.rb +38 -1
  12. data/lib/oci/core/models/create_ip_sec_connection_details.rb +38 -1
  13. data/lib/oci/core/models/create_local_peering_gateway_details.rb +38 -1
  14. data/lib/oci/core/models/create_public_ip_details.rb +38 -1
  15. data/lib/oci/core/models/create_vnic_details.rb +38 -1
  16. data/lib/oci/core/models/create_volume_group_backup_details.rb +239 -0
  17. data/lib/oci/core/models/create_volume_group_details.rb +231 -0
  18. data/lib/oci/core/models/drg.rb +38 -1
  19. data/lib/oci/core/models/internet_gateway.rb +38 -1
  20. data/lib/oci/core/models/ip_sec_connection.rb +38 -1
  21. data/lib/oci/core/models/launch_options.rb +4 -0
  22. data/lib/oci/core/models/local_peering_gateway.rb +38 -1
  23. data/lib/oci/core/models/public_ip.rb +38 -1
  24. data/lib/oci/core/models/update_cpe_details.rb +41 -4
  25. data/lib/oci/core/models/update_drg_details.rb +41 -4
  26. data/lib/oci/core/models/update_internet_gateway_details.rb +38 -1
  27. data/lib/oci/core/models/update_ip_sec_connection_details.rb +41 -4
  28. data/lib/oci/core/models/update_local_peering_gateway_details.rb +41 -4
  29. data/lib/oci/core/models/update_public_ip_details.rb +38 -1
  30. data/lib/oci/core/models/update_vnic_details.rb +38 -1
  31. data/lib/oci/core/models/update_volume_group_backup_details.rb +187 -0
  32. data/lib/oci/core/models/update_volume_group_details.rb +201 -0
  33. data/lib/oci/core/models/vnic.rb +38 -1
  34. data/lib/oci/core/models/volume.rb +18 -4
  35. data/lib/oci/core/models/volume_group.rb +322 -0
  36. data/lib/oci/core/models/volume_group_backup.rb +380 -0
  37. data/lib/oci/core/models/volume_group_source_details.rb +164 -0
  38. data/lib/oci/core/models/volume_group_source_from_volume_group_backup_details.rb +158 -0
  39. data/lib/oci/core/models/volume_group_source_from_volume_group_details.rb +158 -0
  40. data/lib/oci/core/models/volume_group_source_from_volumes_details.rb +158 -0
  41. data/lib/oci/core/virtual_network_client.rb +6 -6
  42. data/lib/oci/database/database.rb +3 -0
  43. data/lib/oci/database/database_client.rb +1 -1
  44. data/lib/oci/database/database_client_composite_operations.rb +1 -1
  45. data/lib/oci/database/models/backup.rb +31 -1
  46. data/lib/oci/database/models/backup_summary.rb +31 -1
  47. data/lib/oci/database/models/create_db_home_from_backup_details.rb +160 -0
  48. data/lib/oci/database/models/launch_db_system_base.rb +438 -0
  49. data/lib/oci/database/models/launch_db_system_details.rb +41 -227
  50. data/lib/oci/database/models/launch_db_system_from_backup_details.rb +314 -0
  51. data/lib/oci/file_storage/file_storage_client.rb +9 -8
  52. data/lib/oci/file_storage/models/export.rb +6 -5
  53. data/lib/oci/file_storage/models/file_system_summary.rb +1 -2
  54. data/lib/oci/version.rb +1 -1
  55. metadata +15 -2
@@ -102,6 +102,84 @@ module OCI
102
102
  # rubocop:disable Layout/EmptyLines
103
103
 
104
104
 
105
+ # Calls {OCI::Core::BlockstorageClient#create_volume_group} and then waits for the {OCI::Core::Models::VolumeGroup} acted upon
106
+ # to enter the given state(s).
107
+ #
108
+ # @param [OCI::Core::Models::CreateVolumeGroupDetails] create_volume_group_details Request to create a new volume group.
109
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Core::Models::VolumeGroup#lifecycle_state}
110
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Core::BlockstorageClient#create_volume_group}
111
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
112
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
113
+ # * max_wait_seconds The maximum time to wait, in seconds
114
+ #
115
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Core::Models::VolumeGroup}
116
+ def create_volume_group_and_wait_for_state(create_volume_group_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
117
+ operation_result = @service_client.create_volume_group(create_volume_group_details, base_operation_opts)
118
+
119
+ return operation_result if wait_for_states.empty?
120
+
121
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
122
+ wait_for_resource_id = operation_result.data.id
123
+
124
+ begin
125
+ waiter_result = @service_client.get_volume_group(wait_for_resource_id).wait_until(
126
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
127
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
128
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
129
+ )
130
+ result_to_return = waiter_result
131
+
132
+ return result_to_return
133
+ rescue StandardError
134
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
135
+ end
136
+ end
137
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
138
+ # rubocop:enable Layout/EmptyLines
139
+
140
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
141
+ # rubocop:disable Layout/EmptyLines
142
+
143
+
144
+ # Calls {OCI::Core::BlockstorageClient#create_volume_group_backup} and then waits for the {OCI::Core::Models::VolumeGroupBackup} acted upon
145
+ # to enter the given state(s).
146
+ #
147
+ # @param [OCI::Core::Models::CreateVolumeGroupBackupDetails] create_volume_group_backup_details Request to create a new backup group of given volume group.
148
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Core::Models::VolumeGroupBackup#lifecycle_state}
149
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Core::BlockstorageClient#create_volume_group_backup}
150
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
151
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
152
+ # * max_wait_seconds The maximum time to wait, in seconds
153
+ #
154
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Core::Models::VolumeGroupBackup}
155
+ def create_volume_group_backup_and_wait_for_state(create_volume_group_backup_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
156
+ operation_result = @service_client.create_volume_group_backup(create_volume_group_backup_details, base_operation_opts)
157
+
158
+ return operation_result if wait_for_states.empty?
159
+
160
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
161
+ wait_for_resource_id = operation_result.data.id
162
+
163
+ begin
164
+ waiter_result = @service_client.get_volume_group_backup(wait_for_resource_id).wait_until(
165
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
166
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
167
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
168
+ )
169
+ result_to_return = waiter_result
170
+
171
+ return result_to_return
172
+ rescue StandardError
173
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
174
+ end
175
+ end
176
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
177
+ # rubocop:enable Layout/EmptyLines
178
+
179
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
180
+ # rubocop:disable Layout/EmptyLines
181
+
182
+
105
183
  # Calls {OCI::Core::BlockstorageClient#delete_boot_volume} and then waits for the {OCI::Core::Models::BootVolume} acted upon
106
184
  # to enter the given state(s).
107
185
  #
@@ -222,6 +300,86 @@ module OCI
222
300
  # rubocop:disable Layout/EmptyLines
223
301
 
224
302
 
303
+ # Calls {OCI::Core::BlockstorageClient#delete_volume_group} and then waits for the {OCI::Core::Models::VolumeGroup} acted upon
304
+ # to enter the given state(s).
305
+ #
306
+ # @param [String] volume_group_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group.
307
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Core::Models::VolumeGroup#lifecycle_state}
308
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Core::BlockstorageClient#delete_volume_group}
309
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
310
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
311
+ # * max_wait_seconds The maximum time to wait, in seconds
312
+ #
313
+ # @return [OCI::Response] A {OCI::Response} object with data of type nil
314
+ def delete_volume_group_and_wait_for_state(volume_group_id, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
315
+ initial_get_result = @service_client.get_volume_group(volume_group_id)
316
+ operation_result = @service_client.delete_volume_group(volume_group_id, base_operation_opts)
317
+
318
+ return operation_result if wait_for_states.empty?
319
+
320
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
321
+
322
+ begin
323
+ waiter_result = initial_get_result.wait_until(
324
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
325
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
326
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200,
327
+ succeed_on_not_found: true
328
+ )
329
+ result_to_return = waiter_result
330
+
331
+ return result_to_return
332
+ rescue StandardError
333
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
334
+ end
335
+ end
336
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
337
+ # rubocop:enable Layout/EmptyLines
338
+
339
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
340
+ # rubocop:disable Layout/EmptyLines
341
+
342
+
343
+ # Calls {OCI::Core::BlockstorageClient#delete_volume_group_backup} and then waits for the {OCI::Core::Models::VolumeGroupBackup} acted upon
344
+ # to enter the given state(s).
345
+ #
346
+ # @param [String] volume_group_backup_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group backup.
347
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Core::Models::VolumeGroupBackup#lifecycle_state}
348
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Core::BlockstorageClient#delete_volume_group_backup}
349
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
350
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
351
+ # * max_wait_seconds The maximum time to wait, in seconds
352
+ #
353
+ # @return [OCI::Response] A {OCI::Response} object with data of type nil
354
+ def delete_volume_group_backup_and_wait_for_state(volume_group_backup_id, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
355
+ initial_get_result = @service_client.get_volume_group_backup(volume_group_backup_id)
356
+ operation_result = @service_client.delete_volume_group_backup(volume_group_backup_id, base_operation_opts)
357
+
358
+ return operation_result if wait_for_states.empty?
359
+
360
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
361
+
362
+ begin
363
+ waiter_result = initial_get_result.wait_until(
364
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
365
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
366
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200,
367
+ succeed_on_not_found: true
368
+ )
369
+ result_to_return = waiter_result
370
+
371
+ return result_to_return
372
+ rescue StandardError
373
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
374
+ end
375
+ end
376
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
377
+ # rubocop:enable Layout/EmptyLines
378
+
379
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
380
+ # rubocop:disable Layout/EmptyLines
381
+
382
+
225
383
  # Calls {OCI::Core::BlockstorageClient#update_boot_volume} and then waits for the {OCI::Core::Models::BootVolume} acted upon
226
384
  # to enter the given state(s).
227
385
  #
@@ -337,6 +495,86 @@ module OCI
337
495
  end
338
496
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
339
497
  # rubocop:enable Layout/EmptyLines
498
+
499
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
500
+ # rubocop:disable Layout/EmptyLines
501
+
502
+
503
+ # Calls {OCI::Core::BlockstorageClient#update_volume_group} and then waits for the {OCI::Core::Models::VolumeGroup} acted upon
504
+ # to enter the given state(s).
505
+ #
506
+ # @param [String] volume_group_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group.
507
+ # @param [OCI::Core::Models::UpdateVolumeGroupDetails] update_volume_group_details Update volume group's set of volumes and/or display name
508
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Core::Models::VolumeGroup#lifecycle_state}
509
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Core::BlockstorageClient#update_volume_group}
510
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
511
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
512
+ # * max_wait_seconds The maximum time to wait, in seconds
513
+ #
514
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Core::Models::VolumeGroup}
515
+ def update_volume_group_and_wait_for_state(volume_group_id, update_volume_group_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
516
+ operation_result = @service_client.update_volume_group(volume_group_id, update_volume_group_details, base_operation_opts)
517
+
518
+ return operation_result if wait_for_states.empty?
519
+
520
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
521
+ wait_for_resource_id = operation_result.data.id
522
+
523
+ begin
524
+ waiter_result = @service_client.get_volume_group(wait_for_resource_id).wait_until(
525
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
526
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
527
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
528
+ )
529
+ result_to_return = waiter_result
530
+
531
+ return result_to_return
532
+ rescue StandardError
533
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
534
+ end
535
+ end
536
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
537
+ # rubocop:enable Layout/EmptyLines
538
+
539
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
540
+ # rubocop:disable Layout/EmptyLines
541
+
542
+
543
+ # Calls {OCI::Core::BlockstorageClient#update_volume_group_backup} and then waits for the {OCI::Core::Models::VolumeGroupBackup} acted upon
544
+ # to enter the given state(s).
545
+ #
546
+ # @param [String] volume_group_backup_id The Oracle Cloud ID (OCID) that uniquely identifies the volume group backup.
547
+ # @param [OCI::Core::Models::UpdateVolumeGroupBackupDetails] update_volume_group_backup_details Update volume group backup fields
548
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Core::Models::VolumeGroupBackup#lifecycle_state}
549
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Core::BlockstorageClient#update_volume_group_backup}
550
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
551
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
552
+ # * max_wait_seconds The maximum time to wait, in seconds
553
+ #
554
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Core::Models::VolumeGroupBackup}
555
+ def update_volume_group_backup_and_wait_for_state(volume_group_backup_id, update_volume_group_backup_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
556
+ operation_result = @service_client.update_volume_group_backup(volume_group_backup_id, update_volume_group_backup_details, base_operation_opts)
557
+
558
+ return operation_result if wait_for_states.empty?
559
+
560
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
561
+ wait_for_resource_id = operation_result.data.id
562
+
563
+ begin
564
+ waiter_result = @service_client.get_volume_group_backup(wait_for_resource_id).wait_until(
565
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
566
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
567
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
568
+ )
569
+ result_to_return = waiter_result
570
+
571
+ return result_to_return
572
+ rescue StandardError
573
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
574
+ end
575
+ end
576
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
577
+ # rubocop:enable Layout/EmptyLines
340
578
  end
341
579
  end
342
580
  # rubocop:enable Lint/UnneededCopDisableDirective, Metrics/LineLength
@@ -1376,11 +1376,7 @@ module OCI
1376
1376
  #
1377
1377
  # **reset** - power off and power on
1378
1378
  #
1379
- # Note that the **stop** state has no effect on the resources you consume.
1380
- # Billing continues for instances that you stop, and related resources continue
1381
- # to apply against any relevant quotas. You must terminate an instance
1382
- # ({#terminate_instance terminate_instance})
1383
- # to remove its resources from billing and quotas.
1379
+ # For more information see [Stopping and Starting an Instance](https://docs.us-phoenix-1.oraclecloud.com/Content/Compute/Tasks/restartinginstance.htm).
1384
1380
  #
1385
1381
  # @param [String] instance_id The OCID of the instance.
1386
1382
  # @param [String] action The action to perform on the instance.
@@ -48,6 +48,8 @@ require 'oci/core/models/create_vnic_details'
48
48
  require 'oci/core/models/create_volume_backup_details'
49
49
  require 'oci/core/models/create_volume_backup_policy_assignment_details'
50
50
  require 'oci/core/models/create_volume_details'
51
+ require 'oci/core/models/create_volume_group_backup_details'
52
+ require 'oci/core/models/create_volume_group_details'
51
53
  require 'oci/core/models/cross_connect'
52
54
  require 'oci/core/models/cross_connect_group'
53
55
  require 'oci/core/models/cross_connect_location'
@@ -128,6 +130,8 @@ require 'oci/core/models/update_virtual_circuit_details'
128
130
  require 'oci/core/models/update_vnic_details'
129
131
  require 'oci/core/models/update_volume_backup_details'
130
132
  require 'oci/core/models/update_volume_details'
133
+ require 'oci/core/models/update_volume_group_backup_details'
134
+ require 'oci/core/models/update_volume_group_details'
131
135
  require 'oci/core/models/vcn'
132
136
  require 'oci/core/models/virtual_circuit'
133
137
  require 'oci/core/models/virtual_circuit_bandwidth_shape'
@@ -140,6 +144,12 @@ require 'oci/core/models/volume_backup'
140
144
  require 'oci/core/models/volume_backup_policy'
141
145
  require 'oci/core/models/volume_backup_policy_assignment'
142
146
  require 'oci/core/models/volume_backup_schedule'
147
+ require 'oci/core/models/volume_group'
148
+ require 'oci/core/models/volume_group_backup'
149
+ require 'oci/core/models/volume_group_source_details'
150
+ require 'oci/core/models/volume_group_source_from_volume_group_backup_details'
151
+ require 'oci/core/models/volume_group_source_from_volume_group_details'
152
+ require 'oci/core/models/volume_group_source_from_volumes_details'
143
153
  require 'oci/core/models/volume_source_details'
144
154
  require 'oci/core/models/volume_source_from_volume_backup_details'
145
155
  require 'oci/core/models/volume_source_from_volume_details'
@@ -66,6 +66,10 @@ module OCI
66
66
  # @return [DateTime]
67
67
  attr_accessor :time_created
68
68
 
69
+ # The OCID of the source volume group.
70
+ # @return [String]
71
+ attr_accessor :volume_group_id
72
+
69
73
  # Attribute mapping from ruby-style variable name to JSON key.
70
74
  def self.attribute_map
71
75
  {
@@ -78,7 +82,8 @@ module OCI
78
82
  'lifecycle_state': :'lifecycleState',
79
83
  'size_in_gbs': :'sizeInGBs',
80
84
  'size_in_mbs': :'sizeInMBs',
81
- 'time_created': :'timeCreated'
85
+ 'time_created': :'timeCreated',
86
+ 'volume_group_id': :'volumeGroupId'
82
87
  # rubocop:enable Style/SymbolLiteral
83
88
  }
84
89
  end
@@ -95,7 +100,8 @@ module OCI
95
100
  'lifecycle_state': :'String',
96
101
  'size_in_gbs': :'Integer',
97
102
  'size_in_mbs': :'Integer',
98
- 'time_created': :'DateTime'
103
+ 'time_created': :'DateTime',
104
+ 'volume_group_id': :'String'
99
105
  # rubocop:enable Style/SymbolLiteral
100
106
  }
101
107
  end
@@ -115,6 +121,7 @@ module OCI
115
121
  # @option attributes [Integer] :size_in_gbs The value to assign to the {#size_in_gbs} property
116
122
  # @option attributes [Integer] :size_in_mbs The value to assign to the {#size_in_mbs} property
117
123
  # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
124
+ # @option attributes [String] :volume_group_id The value to assign to the {#volume_group_id} property
118
125
  def initialize(attributes = {})
119
126
  return unless attributes.is_a?(Hash)
120
127
 
@@ -170,6 +177,12 @@ module OCI
170
177
  raise 'You cannot provide both :timeCreated and :time_created' if attributes.key?(:'timeCreated') && attributes.key?(:'time_created')
171
178
 
172
179
  self.time_created = attributes[:'time_created'] if attributes[:'time_created']
180
+
181
+ self.volume_group_id = attributes[:'volumeGroupId'] if attributes[:'volumeGroupId']
182
+
183
+ raise 'You cannot provide both :volumeGroupId and :volume_group_id' if attributes.key?(:'volumeGroupId') && attributes.key?(:'volume_group_id')
184
+
185
+ self.volume_group_id = attributes[:'volume_group_id'] if attributes[:'volume_group_id']
173
186
  end
174
187
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity
175
188
  # rubocop:enable Metrics/LineLength, Metrics/MethodLength, Layout/EmptyLines, Style/SymbolLiteral
@@ -205,7 +218,8 @@ module OCI
205
218
  lifecycle_state == other.lifecycle_state &&
206
219
  size_in_gbs == other.size_in_gbs &&
207
220
  size_in_mbs == other.size_in_mbs &&
208
- time_created == other.time_created
221
+ time_created == other.time_created &&
222
+ volume_group_id == other.volume_group_id
209
223
  end
210
224
  # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/PerceivedComplexity, Layout/EmptyLines
211
225
 
@@ -221,7 +235,7 @@ module OCI
221
235
  # Calculates hash code according to all attributes.
222
236
  # @return [Fixnum] Hash code
223
237
  def hash
224
- [availability_domain, compartment_id, display_name, id, image_id, lifecycle_state, size_in_gbs, size_in_mbs, time_created].hash
238
+ [availability_domain, compartment_id, display_name, id, image_id, lifecycle_state, size_in_gbs, size_in_mbs, time_created, volume_group_id].hash
225
239
  end
226
240
  # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
227
241
 
@@ -19,12 +19,29 @@ module OCI
19
19
  # @return [String]
20
20
  attr_accessor :compartment_id
21
21
 
22
+ # Defined tags for this resource. Each key is predefined and scoped to a namespace.
23
+ # For more information, see [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
24
+ #
25
+ # Example: `{\"Operations\": {\"CostCenter\": \"42\"}}`
26
+ #
27
+ # @return [Hash<String, Hash<String, Object>>]
28
+ attr_accessor :defined_tags
29
+
22
30
  # A user-friendly name. Does not have to be unique, and it's changeable.
23
31
  # Avoid entering confidential information.
24
32
  #
25
33
  # @return [String]
26
34
  attr_accessor :display_name
27
35
 
36
+ # Free-form tags for this resource. Each tag is a simple key-value pair with no
37
+ # predefined name, type, or namespace. For more information, see
38
+ # [Resource Tags](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm).
39
+ #
40
+ # Example: `{\"Department\": \"Finance\"}`
41
+ #
42
+ # @return [Hash<String, String>]
43
+ attr_accessor :freeform_tags
44
+
28
45
  # **[Required]** The CPE's Oracle ID (OCID).
29
46
  # @return [String]
30
47
  attr_accessor :id
@@ -45,7 +62,9 @@ module OCI
45
62
  {
46
63
  # rubocop:disable Style/SymbolLiteral
47
64
  'compartment_id': :'compartmentId',
65
+ 'defined_tags': :'definedTags',
48
66
  'display_name': :'displayName',
67
+ 'freeform_tags': :'freeformTags',
49
68
  'id': :'id',
50
69
  'ip_address': :'ipAddress',
51
70
  'time_created': :'timeCreated'
@@ -58,7 +77,9 @@ module OCI
58
77
  {
59
78
  # rubocop:disable Style/SymbolLiteral
60
79
  'compartment_id': :'String',
80
+ 'defined_tags': :'Hash<String, Hash<String, Object>>',
61
81
  'display_name': :'String',
82
+ 'freeform_tags': :'Hash<String, String>',
62
83
  'id': :'String',
63
84
  'ip_address': :'String',
64
85
  'time_created': :'DateTime'
@@ -73,7 +94,9 @@ module OCI
73
94
  # Initializes the object
74
95
  # @param [Hash] attributes Model attributes in the form of hash
75
96
  # @option attributes [String] :compartment_id The value to assign to the {#compartment_id} property
97
+ # @option attributes [Hash<String, Hash<String, Object>>] :defined_tags The value to assign to the {#defined_tags} property
76
98
  # @option attributes [String] :display_name The value to assign to the {#display_name} property
99
+ # @option attributes [Hash<String, String>] :freeform_tags The value to assign to the {#freeform_tags} property
77
100
  # @option attributes [String] :id The value to assign to the {#id} property
78
101
  # @option attributes [String] :ip_address The value to assign to the {#ip_address} property
79
102
  # @option attributes [DateTime] :time_created The value to assign to the {#time_created} property
@@ -89,12 +112,24 @@ module OCI
89
112
 
90
113
  self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']
91
114
 
115
+ self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']
116
+
117
+ raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')
118
+
119
+ self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']
120
+
92
121
  self.display_name = attributes[:'displayName'] if attributes[:'displayName']
93
122
 
94
123
  raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')
95
124
 
96
125
  self.display_name = attributes[:'display_name'] if attributes[:'display_name']
97
126
 
127
+ self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']
128
+
129
+ raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')
130
+
131
+ self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']
132
+
98
133
  self.id = attributes[:'id'] if attributes[:'id']
99
134
 
100
135
  self.ip_address = attributes[:'ipAddress'] if attributes[:'ipAddress']
@@ -121,7 +156,9 @@ module OCI
121
156
  return true if equal?(other)
122
157
  self.class == other.class &&
123
158
  compartment_id == other.compartment_id &&
159
+ defined_tags == other.defined_tags &&
124
160
  display_name == other.display_name &&
161
+ freeform_tags == other.freeform_tags &&
125
162
  id == other.id &&
126
163
  ip_address == other.ip_address &&
127
164
  time_created == other.time_created
@@ -140,7 +177,7 @@ module OCI
140
177
  # Calculates hash code according to all attributes.
141
178
  # @return [Fixnum] Hash code
142
179
  def hash
143
- [compartment_id, display_name, id, ip_address, time_created].hash
180
+ [compartment_id, defined_tags, display_name, freeform_tags, id, ip_address, time_created].hash
144
181
  end
145
182
  # rubocop:enable Metrics/AbcSize, Metrics/LineLength, Layout/EmptyLines
146
183