oci 2.3.6 → 2.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -10
  3. data/lib/oci.rb +1 -0
  4. data/lib/oci/api_client.rb +2 -2
  5. data/lib/oci/audit/audit_client.rb +11 -9
  6. data/lib/oci/base_signer.rb +13 -13
  7. data/lib/oci/container_engine/container_engine_client.rb +43 -39
  8. data/lib/oci/container_engine/models/node_error.rb +1 -1
  9. data/lib/oci/container_engine/models/work_request_error.rb +1 -1
  10. data/lib/oci/core/blockstorage_client.rb +421 -75
  11. data/lib/oci/core/compute_client.rb +77 -75
  12. data/lib/oci/core/compute_client_composite_operations.rb +40 -0
  13. data/lib/oci/core/core.rb +4 -0
  14. data/lib/oci/core/models/boot_volume.rb +18 -4
  15. data/lib/oci/core/models/boot_volume_kms_key.rb +152 -0
  16. data/lib/oci/core/models/create_boot_volume_details.rb +15 -1
  17. data/lib/oci/core/models/create_image_details.rb +2 -0
  18. data/lib/oci/core/models/create_volume_details.rb +15 -1
  19. data/lib/oci/core/models/fast_connect_provider_service.rb +1 -1
  20. data/lib/oci/core/models/image.rb +2 -0
  21. data/lib/oci/core/models/instance.rb +2 -0
  22. data/lib/oci/core/models/instance_source_via_image_details.rb +18 -4
  23. data/lib/oci/core/models/launch_options.rb +2 -0
  24. data/lib/oci/core/models/update_boot_volume_kms_key_details.rb +154 -0
  25. data/lib/oci/core/models/update_volume_kms_key_details.rb +154 -0
  26. data/lib/oci/core/models/volume.rb +15 -1
  27. data/lib/oci/core/models/volume_kms_key.rb +152 -0
  28. data/lib/oci/core/virtual_network_client.rb +233 -231
  29. data/lib/oci/core/virtual_network_client_composite_operations.rb +80 -0
  30. data/lib/oci/database/database_client.rb +123 -121
  31. data/lib/oci/database/database_client_composite_operations.rb +399 -0
  32. data/lib/oci/database/models/patch.rb +1 -1
  33. data/lib/oci/database/models/patch_summary.rb +1 -1
  34. data/lib/oci/dns/dns_client.rb +38 -36
  35. data/lib/oci/email/email_client.rb +21 -19
  36. data/lib/oci/email/models/sender.rb +1 -1
  37. data/lib/oci/email/models/suppression.rb +1 -1
  38. data/lib/oci/file_storage/file_storage_client.rb +49 -47
  39. data/lib/oci/identity/identity_client.rb +151 -149
  40. data/lib/oci/identity/identity_client_composite_operations.rb +40 -0
  41. data/lib/oci/key_management/key_management.rb +40 -0
  42. data/lib/oci/key_management/kms_crypto_client.rb +258 -0
  43. data/lib/oci/key_management/kms_crypto_client_composite_operations.rb +24 -0
  44. data/lib/oci/key_management/kms_management_client.rb +716 -0
  45. data/lib/oci/key_management/kms_management_client_composite_operations.rb +181 -0
  46. data/lib/oci/key_management/kms_vault_client.rb +533 -0
  47. data/lib/oci/key_management/kms_vault_client_composite_operations.rb +182 -0
  48. data/lib/oci/key_management/models/create_key_details.rb +180 -0
  49. data/lib/oci/key_management/models/create_vault_details.rb +194 -0
  50. data/lib/oci/key_management/models/decrypt_data_details.rb +177 -0
  51. data/lib/oci/key_management/models/decrypted_data.rb +160 -0
  52. data/lib/oci/key_management/models/encrypt_data_details.rb +177 -0
  53. data/lib/oci/key_management/models/encrypted_data.rb +146 -0
  54. data/lib/oci/key_management/models/generate_key_details.rb +195 -0
  55. data/lib/oci/key_management/models/generated_key.rb +177 -0
  56. data/lib/oci/key_management/models/key.rb +318 -0
  57. data/lib/oci/key_management/models/key_shape.rb +178 -0
  58. data/lib/oci/key_management/models/key_summary.rb +287 -0
  59. data/lib/oci/key_management/models/key_version.rb +205 -0
  60. data/lib/oci/key_management/models/key_version_summary.rb +205 -0
  61. data/lib/oci/key_management/models/schedule_vault_deletion_details.rb +153 -0
  62. data/lib/oci/key_management/models/update_key_details.rb +152 -0
  63. data/lib/oci/key_management/models/update_vault_details.rb +152 -0
  64. data/lib/oci/key_management/models/vault.rb +350 -0
  65. data/lib/oci/key_management/models/vault_summary.rb +334 -0
  66. data/lib/oci/key_management/util.rb +2 -0
  67. data/lib/oci/load_balancer/load_balancer_client.rb +89 -87
  68. data/lib/oci/object_storage/models/bucket.rb +18 -4
  69. data/lib/oci/object_storage/models/create_bucket_details.rb +18 -4
  70. data/lib/oci/object_storage/models/multipart_upload.rb +1 -1
  71. data/lib/oci/object_storage/models/preauthenticated_request.rb +1 -1
  72. data/lib/oci/object_storage/models/update_bucket_details.rb +22 -4
  73. data/lib/oci/object_storage/object_storage_client.rb +63 -58
  74. data/lib/oci/resource_search/resource_search_client.rb +11 -9
  75. data/lib/oci/version.rb +1 -1
  76. metadata +32 -2
@@ -499,6 +499,47 @@ module OCI
499
499
  # rubocop:disable Layout/EmptyLines
500
500
 
501
501
 
502
+ # Calls {OCI::Database::DatabaseClient#failover_data_guard_association} and then waits for the {OCI::Database::Models::DataGuardAssociation} acted upon
503
+ # to enter the given state(s).
504
+ #
505
+ # @param [String] database_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
506
+ # @param [String] data_guard_association_id The Data Guard association's [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
507
+ # @param [OCI::Database::Models::FailoverDataGuardAssociationDetails] failover_data_guard_association_details A request to perform a failover, transitioning a standby database into a primary database.
508
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::DataGuardAssociation#lifecycle_state}
509
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#failover_data_guard_association}
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::Database::Models::DataGuardAssociation}
515
+ def failover_data_guard_association_and_wait_for_state(database_id, data_guard_association_id, failover_data_guard_association_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
516
+ operation_result = @service_client.failover_data_guard_association(database_id, data_guard_association_id, failover_data_guard_association_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_data_guard_association(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
+
502
543
  # Calls {OCI::Database::DatabaseClient#launch_db_system} and then waits for the {OCI::Database::Models::DbSystem} acted upon
503
544
  # to enter the given state(s).
504
545
  #
@@ -538,6 +579,364 @@ module OCI
538
579
  # rubocop:disable Layout/EmptyLines
539
580
 
540
581
 
582
+ # Calls {OCI::Database::DatabaseClient#reinstate_data_guard_association} and then waits for the {OCI::Database::Models::DataGuardAssociation} acted upon
583
+ # to enter the given state(s).
584
+ #
585
+ # @param [String] database_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
586
+ # @param [String] data_guard_association_id The Data Guard association's [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
587
+ # @param [OCI::Database::Models::ReinstateDataGuardAssociationDetails] reinstate_data_guard_association_details A request to reinstate a database in a standby role.
588
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::DataGuardAssociation#lifecycle_state}
589
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#reinstate_data_guard_association}
590
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
591
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
592
+ # * max_wait_seconds The maximum time to wait, in seconds
593
+ #
594
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Database::Models::DataGuardAssociation}
595
+ def reinstate_data_guard_association_and_wait_for_state(database_id, data_guard_association_id, reinstate_data_guard_association_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
596
+ operation_result = @service_client.reinstate_data_guard_association(database_id, data_guard_association_id, reinstate_data_guard_association_details, base_operation_opts)
597
+
598
+ return operation_result if wait_for_states.empty?
599
+
600
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
601
+ wait_for_resource_id = operation_result.data.id
602
+
603
+ begin
604
+ waiter_result = @service_client.get_data_guard_association(wait_for_resource_id).wait_until(
605
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
606
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
607
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
608
+ )
609
+ result_to_return = waiter_result
610
+
611
+ return result_to_return
612
+ rescue StandardError
613
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
614
+ end
615
+ end
616
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
617
+ # rubocop:enable Layout/EmptyLines
618
+
619
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
620
+ # rubocop:disable Layout/EmptyLines
621
+
622
+
623
+ # Calls {OCI::Database::DatabaseClient#restore_autonomous_data_warehouse} and then waits for the {OCI::Database::Models::AutonomousDataWarehouse} acted upon
624
+ # to enter the given state(s).
625
+ #
626
+ # @param [String] autonomous_data_warehouse_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
627
+ # @param [OCI::Database::Models::RestoreAutonomousDataWarehouseDetails] restore_autonomous_data_warehouse_details Request to perform an Autonomous Data Warehouse restore.
628
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::AutonomousDataWarehouse#lifecycle_state}
629
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#restore_autonomous_data_warehouse}
630
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
631
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
632
+ # * max_wait_seconds The maximum time to wait, in seconds
633
+ #
634
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Database::Models::AutonomousDataWarehouse}
635
+ def restore_autonomous_data_warehouse_and_wait_for_state(autonomous_data_warehouse_id, restore_autonomous_data_warehouse_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
636
+ operation_result = @service_client.restore_autonomous_data_warehouse(autonomous_data_warehouse_id, restore_autonomous_data_warehouse_details, base_operation_opts)
637
+
638
+ return operation_result if wait_for_states.empty?
639
+
640
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
641
+ wait_for_resource_id = operation_result.data.id
642
+
643
+ begin
644
+ waiter_result = @service_client.get_autonomous_data_warehouse(wait_for_resource_id).wait_until(
645
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
646
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
647
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
648
+ )
649
+ result_to_return = waiter_result
650
+
651
+ return result_to_return
652
+ rescue StandardError
653
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
654
+ end
655
+ end
656
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
657
+ # rubocop:enable Layout/EmptyLines
658
+
659
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
660
+ # rubocop:disable Layout/EmptyLines
661
+
662
+
663
+ # Calls {OCI::Database::DatabaseClient#restore_autonomous_database} and then waits for the {OCI::Database::Models::AutonomousDatabase} acted upon
664
+ # to enter the given state(s).
665
+ #
666
+ # @param [String] autonomous_database_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
667
+ # @param [OCI::Database::Models::RestoreAutonomousDatabaseDetails] restore_autonomous_database_details Request to perform an Autonomous Database restore.
668
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::AutonomousDatabase#lifecycle_state}
669
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#restore_autonomous_database}
670
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
671
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
672
+ # * max_wait_seconds The maximum time to wait, in seconds
673
+ #
674
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Database::Models::AutonomousDatabase}
675
+ def restore_autonomous_database_and_wait_for_state(autonomous_database_id, restore_autonomous_database_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
676
+ operation_result = @service_client.restore_autonomous_database(autonomous_database_id, restore_autonomous_database_details, base_operation_opts)
677
+
678
+ return operation_result if wait_for_states.empty?
679
+
680
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
681
+ wait_for_resource_id = operation_result.data.id
682
+
683
+ begin
684
+ waiter_result = @service_client.get_autonomous_database(wait_for_resource_id).wait_until(
685
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
686
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
687
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
688
+ )
689
+ result_to_return = waiter_result
690
+
691
+ return result_to_return
692
+ rescue StandardError
693
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
694
+ end
695
+ end
696
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
697
+ # rubocop:enable Layout/EmptyLines
698
+
699
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
700
+ # rubocop:disable Layout/EmptyLines
701
+
702
+
703
+ # Calls {OCI::Database::DatabaseClient#restore_database} and then waits for the {OCI::Database::Models::Database} acted upon
704
+ # to enter the given state(s).
705
+ #
706
+ # @param [String] database_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
707
+ # @param [OCI::Database::Models::RestoreDatabaseDetails] restore_database_details Request to perform database restore.
708
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::Database#lifecycle_state}
709
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#restore_database}
710
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
711
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
712
+ # * max_wait_seconds The maximum time to wait, in seconds
713
+ #
714
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Database::Models::Database}
715
+ def restore_database_and_wait_for_state(database_id, restore_database_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
716
+ operation_result = @service_client.restore_database(database_id, restore_database_details, base_operation_opts)
717
+
718
+ return operation_result if wait_for_states.empty?
719
+
720
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
721
+ wait_for_resource_id = operation_result.data.id
722
+
723
+ begin
724
+ waiter_result = @service_client.get_database(wait_for_resource_id).wait_until(
725
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
726
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
727
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
728
+ )
729
+ result_to_return = waiter_result
730
+
731
+ return result_to_return
732
+ rescue StandardError
733
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
734
+ end
735
+ end
736
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
737
+ # rubocop:enable Layout/EmptyLines
738
+
739
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
740
+ # rubocop:disable Layout/EmptyLines
741
+
742
+
743
+ # Calls {OCI::Database::DatabaseClient#start_autonomous_data_warehouse} and then waits for the {OCI::Database::Models::AutonomousDataWarehouse} acted upon
744
+ # to enter the given state(s).
745
+ #
746
+ # @param [String] autonomous_data_warehouse_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
747
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::AutonomousDataWarehouse#lifecycle_state}
748
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#start_autonomous_data_warehouse}
749
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
750
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
751
+ # * max_wait_seconds The maximum time to wait, in seconds
752
+ #
753
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Database::Models::AutonomousDataWarehouse}
754
+ def start_autonomous_data_warehouse_and_wait_for_state(autonomous_data_warehouse_id, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
755
+ operation_result = @service_client.start_autonomous_data_warehouse(autonomous_data_warehouse_id, base_operation_opts)
756
+
757
+ return operation_result if wait_for_states.empty?
758
+
759
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
760
+ wait_for_resource_id = operation_result.data.id
761
+
762
+ begin
763
+ waiter_result = @service_client.get_autonomous_data_warehouse(wait_for_resource_id).wait_until(
764
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
765
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
766
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
767
+ )
768
+ result_to_return = waiter_result
769
+
770
+ return result_to_return
771
+ rescue StandardError
772
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
773
+ end
774
+ end
775
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
776
+ # rubocop:enable Layout/EmptyLines
777
+
778
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
779
+ # rubocop:disable Layout/EmptyLines
780
+
781
+
782
+ # Calls {OCI::Database::DatabaseClient#start_autonomous_database} and then waits for the {OCI::Database::Models::AutonomousDatabase} acted upon
783
+ # to enter the given state(s).
784
+ #
785
+ # @param [String] autonomous_database_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
786
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::AutonomousDatabase#lifecycle_state}
787
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#start_autonomous_database}
788
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
789
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
790
+ # * max_wait_seconds The maximum time to wait, in seconds
791
+ #
792
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Database::Models::AutonomousDatabase}
793
+ def start_autonomous_database_and_wait_for_state(autonomous_database_id, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
794
+ operation_result = @service_client.start_autonomous_database(autonomous_database_id, base_operation_opts)
795
+
796
+ return operation_result if wait_for_states.empty?
797
+
798
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
799
+ wait_for_resource_id = operation_result.data.id
800
+
801
+ begin
802
+ waiter_result = @service_client.get_autonomous_database(wait_for_resource_id).wait_until(
803
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
804
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
805
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
806
+ )
807
+ result_to_return = waiter_result
808
+
809
+ return result_to_return
810
+ rescue StandardError
811
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
812
+ end
813
+ end
814
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
815
+ # rubocop:enable Layout/EmptyLines
816
+
817
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
818
+ # rubocop:disable Layout/EmptyLines
819
+
820
+
821
+ # Calls {OCI::Database::DatabaseClient#stop_autonomous_data_warehouse} and then waits for the {OCI::Database::Models::AutonomousDataWarehouse} acted upon
822
+ # to enter the given state(s).
823
+ #
824
+ # @param [String] autonomous_data_warehouse_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
825
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::AutonomousDataWarehouse#lifecycle_state}
826
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#stop_autonomous_data_warehouse}
827
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
828
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
829
+ # * max_wait_seconds The maximum time to wait, in seconds
830
+ #
831
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Database::Models::AutonomousDataWarehouse}
832
+ def stop_autonomous_data_warehouse_and_wait_for_state(autonomous_data_warehouse_id, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
833
+ operation_result = @service_client.stop_autonomous_data_warehouse(autonomous_data_warehouse_id, base_operation_opts)
834
+
835
+ return operation_result if wait_for_states.empty?
836
+
837
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
838
+ wait_for_resource_id = operation_result.data.id
839
+
840
+ begin
841
+ waiter_result = @service_client.get_autonomous_data_warehouse(wait_for_resource_id).wait_until(
842
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
843
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
844
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
845
+ )
846
+ result_to_return = waiter_result
847
+
848
+ return result_to_return
849
+ rescue StandardError
850
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
851
+ end
852
+ end
853
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
854
+ # rubocop:enable Layout/EmptyLines
855
+
856
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
857
+ # rubocop:disable Layout/EmptyLines
858
+
859
+
860
+ # Calls {OCI::Database::DatabaseClient#stop_autonomous_database} and then waits for the {OCI::Database::Models::AutonomousDatabase} acted upon
861
+ # to enter the given state(s).
862
+ #
863
+ # @param [String] autonomous_database_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
864
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::AutonomousDatabase#lifecycle_state}
865
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#stop_autonomous_database}
866
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
867
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
868
+ # * max_wait_seconds The maximum time to wait, in seconds
869
+ #
870
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Database::Models::AutonomousDatabase}
871
+ def stop_autonomous_database_and_wait_for_state(autonomous_database_id, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
872
+ operation_result = @service_client.stop_autonomous_database(autonomous_database_id, base_operation_opts)
873
+
874
+ return operation_result if wait_for_states.empty?
875
+
876
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
877
+ wait_for_resource_id = operation_result.data.id
878
+
879
+ begin
880
+ waiter_result = @service_client.get_autonomous_database(wait_for_resource_id).wait_until(
881
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
882
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
883
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
884
+ )
885
+ result_to_return = waiter_result
886
+
887
+ return result_to_return
888
+ rescue StandardError
889
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
890
+ end
891
+ end
892
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
893
+ # rubocop:enable Layout/EmptyLines
894
+
895
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
896
+ # rubocop:disable Layout/EmptyLines
897
+
898
+
899
+ # Calls {OCI::Database::DatabaseClient#switchover_data_guard_association} and then waits for the {OCI::Database::Models::DataGuardAssociation} acted upon
900
+ # to enter the given state(s).
901
+ #
902
+ # @param [String] database_id The database [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
903
+ # @param [String] data_guard_association_id The Data Guard association's [OCID](https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/identifiers.htm).
904
+ # @param [OCI::Database::Models::SwitchoverDataGuardAssociationDetails] switchover_data_guard_association_details Request to swtichover a primary to a standby.
905
+ # @param [Array<String>] wait_for_states An array of states to wait on. These should be valid values for {OCI::Database::Models::DataGuardAssociation#lifecycle_state}
906
+ # @param [Hash] base_operation_opts Any optional arguments accepted by {OCI::Database::DatabaseClient#switchover_data_guard_association}
907
+ # @param [Hash] waiter_opts Optional arguments for the waiter. Keys should be symbols, and the following keys are supported:
908
+ # * max_interval_seconds: The maximum interval between queries, in seconds.
909
+ # * max_wait_seconds The maximum time to wait, in seconds
910
+ #
911
+ # @return [OCI::Response] A {OCI::Response} object with data of type {OCI::Database::Models::DataGuardAssociation}
912
+ def switchover_data_guard_association_and_wait_for_state(database_id, data_guard_association_id, switchover_data_guard_association_details, wait_for_states = [], base_operation_opts = {}, waiter_opts = {})
913
+ operation_result = @service_client.switchover_data_guard_association(database_id, data_guard_association_id, switchover_data_guard_association_details, base_operation_opts)
914
+
915
+ return operation_result if wait_for_states.empty?
916
+
917
+ lowered_wait_for_states = wait_for_states.map(&:downcase)
918
+ wait_for_resource_id = operation_result.data.id
919
+
920
+ begin
921
+ waiter_result = @service_client.get_data_guard_association(wait_for_resource_id).wait_until(
922
+ eval_proc: ->(response) { response.data.respond_to?(:lifecycle_state) && lowered_wait_for_states.include?(response.data.lifecycle_state.downcase) },
923
+ max_interval_seconds: waiter_opts.key?(:max_interval_seconds) ? waiter_opts[:max_interval_seconds] : 30,
924
+ max_wait_seconds: waiter_opts.key?(:max_wait_seconds) ? waiter_opts[:max_wait_seconds] : 1200
925
+ )
926
+ result_to_return = waiter_result
927
+
928
+ return result_to_return
929
+ rescue StandardError
930
+ raise OCI::Errors::CompositeOperationError.new(partial_results: [operation_result])
931
+ end
932
+ end
933
+ # rubocop:enable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
934
+ # rubocop:enable Layout/EmptyLines
935
+
936
+ # rubocop:disable Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/ParameterLists, Metrics/PerceivedComplexity
937
+ # rubocop:disable Layout/EmptyLines
938
+
939
+
541
940
  # Calls {OCI::Database::DatabaseClient#terminate_db_system} and then waits for the {OCI::Database::Models::DbSystem} acted upon
542
941
  # to enter the given state(s).
543
942
  #
@@ -176,7 +176,7 @@ module OCI
176
176
  end
177
177
  end
178
178
  end
179
- # rubocop:disable Style/ConditionalAssignment
179
+ # rubocop:enable Style/ConditionalAssignment
180
180
  end
181
181
 
182
182
  # Custom attribute writer method checking allowed values (enum).
@@ -176,7 +176,7 @@ module OCI
176
176
  end
177
177
  end
178
178
  end
179
- # rubocop:disable Style/ConditionalAssignment
179
+ # rubocop:enable Style/ConditionalAssignment
180
180
  end
181
181
 
182
182
  # Custom attribute writer method checking allowed values (enum).
@@ -29,10 +29,12 @@ module OCI
29
29
 
30
30
 
31
31
  # Creates a new DnsClient.
32
- # If a config is not specified, then the global OCI.config will be used.
32
+ # Notes:
33
+ # If a config is not specified, then the global OCI.config will be used.
34
+ # This client is not thread-safe
33
35
  #
34
- # A region must be specified in either the config or the region parameter. If specified
35
- # in both, then the region parameter will be used.
36
+ # A region must be specified in either the config or the region parameter. If specified in both,
37
+ # then the region parameter will be used.
36
38
  #
37
39
  # @param [Config] config A Config object.
38
40
  # @param [String] region A region used to determine the service endpoint. This will usually
@@ -124,8 +126,8 @@ module OCI
124
126
 
125
127
  # Header Params
126
128
  header_params = {}
127
- header_params['accept'] = 'application/json'
128
- header_params['content-type'] = 'application/json'
129
+ header_params[:accept] = 'application/json'
130
+ header_params[:'content-type'] = 'application/json'
129
131
  # rubocop:enable Style/NegatedIf
130
132
 
131
133
  post_body = @api_client.object_to_http_body(create_zone_details)
@@ -192,8 +194,8 @@ module OCI
192
194
 
193
195
  # Header Params
194
196
  header_params = {}
195
- header_params['accept'] = 'application/json'
196
- header_params['content-type'] = 'application/json'
197
+ header_params[:accept] = 'application/json'
198
+ header_params[:'content-type'] = 'application/json'
197
199
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
198
200
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
199
201
  # rubocop:enable Style/NegatedIf
@@ -265,8 +267,8 @@ module OCI
265
267
 
266
268
  # Header Params
267
269
  header_params = {}
268
- header_params['accept'] = 'application/json'
269
- header_params['content-type'] = 'application/json'
270
+ header_params[:accept] = 'application/json'
271
+ header_params[:'content-type'] = 'application/json'
270
272
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
271
273
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
272
274
  # rubocop:enable Style/NegatedIf
@@ -333,8 +335,8 @@ module OCI
333
335
 
334
336
  # Header Params
335
337
  header_params = {}
336
- header_params['accept'] = 'application/json'
337
- header_params['content-type'] = 'application/json'
338
+ header_params[:accept] = 'application/json'
339
+ header_params[:'content-type'] = 'application/json'
338
340
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
339
341
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
340
342
  # rubocop:enable Style/NegatedIf
@@ -430,8 +432,8 @@ module OCI
430
432
 
431
433
  # Header Params
432
434
  header_params = {}
433
- header_params['accept'] = 'application/json'
434
- header_params['content-type'] = 'application/json'
435
+ header_params[:accept] = 'application/json'
436
+ header_params[:'content-type'] = 'application/json'
435
437
  header_params[:'if-none-match'] = opts[:if_none_match] if opts[:if_none_match]
436
438
  header_params[:'if-modified-since'] = opts[:if_modified_since] if opts[:if_modified_since]
437
439
  # rubocop:enable Style/NegatedIf
@@ -512,8 +514,8 @@ module OCI
512
514
 
513
515
  # Header Params
514
516
  header_params = {}
515
- header_params['accept'] = 'application/json'
516
- header_params['content-type'] = 'application/json'
517
+ header_params[:accept] = 'application/json'
518
+ header_params[:'content-type'] = 'application/json'
517
519
  header_params[:'if-none-match'] = opts[:if_none_match] if opts[:if_none_match]
518
520
  header_params[:'if-modified-since'] = opts[:if_modified_since] if opts[:if_modified_since]
519
521
  # rubocop:enable Style/NegatedIf
@@ -579,8 +581,8 @@ module OCI
579
581
 
580
582
  # Header Params
581
583
  header_params = {}
582
- header_params['accept'] = 'application/json'
583
- header_params['content-type'] = 'application/json'
584
+ header_params[:accept] = 'application/json'
585
+ header_params[:'content-type'] = 'application/json'
584
586
  header_params[:'if-none-match'] = opts[:if_none_match] if opts[:if_none_match]
585
587
  header_params[:'if-modified-since'] = opts[:if_modified_since] if opts[:if_modified_since]
586
588
  # rubocop:enable Style/NegatedIf
@@ -682,8 +684,8 @@ module OCI
682
684
 
683
685
  # Header Params
684
686
  header_params = {}
685
- header_params['accept'] = 'application/json'
686
- header_params['content-type'] = 'application/json'
687
+ header_params[:accept] = 'application/json'
688
+ header_params[:'content-type'] = 'application/json'
687
689
  header_params[:'if-none-match'] = opts[:if_none_match] if opts[:if_none_match]
688
690
  header_params[:'if-modified-since'] = opts[:if_modified_since] if opts[:if_modified_since]
689
691
  # rubocop:enable Style/NegatedIf
@@ -789,8 +791,8 @@ module OCI
789
791
 
790
792
  # Header Params
791
793
  header_params = {}
792
- header_params['accept'] = 'application/json'
793
- header_params['content-type'] = 'application/json'
794
+ header_params[:accept] = 'application/json'
795
+ header_params[:'content-type'] = 'application/json'
794
796
  # rubocop:enable Style/NegatedIf
795
797
 
796
798
  post_body = nil
@@ -859,8 +861,8 @@ module OCI
859
861
 
860
862
  # Header Params
861
863
  header_params = {}
862
- header_params['accept'] = 'application/json'
863
- header_params['content-type'] = 'application/json'
864
+ header_params[:accept] = 'application/json'
865
+ header_params[:'content-type'] = 'application/json'
864
866
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
865
867
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
866
868
  # rubocop:enable Style/NegatedIf
@@ -934,8 +936,8 @@ module OCI
934
936
 
935
937
  # Header Params
936
938
  header_params = {}
937
- header_params['accept'] = 'application/json'
938
- header_params['content-type'] = 'application/json'
939
+ header_params[:accept] = 'application/json'
940
+ header_params[:'content-type'] = 'application/json'
939
941
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
940
942
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
941
943
  # rubocop:enable Style/NegatedIf
@@ -1008,8 +1010,8 @@ module OCI
1008
1010
 
1009
1011
  # Header Params
1010
1012
  header_params = {}
1011
- header_params['accept'] = 'application/json'
1012
- header_params['content-type'] = 'application/json'
1013
+ header_params[:accept] = 'application/json'
1014
+ header_params[:'content-type'] = 'application/json'
1013
1015
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
1014
1016
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
1015
1017
  # rubocop:enable Style/NegatedIf
@@ -1086,8 +1088,8 @@ module OCI
1086
1088
 
1087
1089
  # Header Params
1088
1090
  header_params = {}
1089
- header_params['accept'] = 'application/json'
1090
- header_params['content-type'] = 'application/json'
1091
+ header_params[:accept] = 'application/json'
1092
+ header_params[:'content-type'] = 'application/json'
1091
1093
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
1092
1094
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
1093
1095
  # rubocop:enable Style/NegatedIf
@@ -1161,8 +1163,8 @@ module OCI
1161
1163
 
1162
1164
  # Header Params
1163
1165
  header_params = {}
1164
- header_params['accept'] = 'application/json'
1165
- header_params['content-type'] = 'application/json'
1166
+ header_params[:accept] = 'application/json'
1167
+ header_params[:'content-type'] = 'application/json'
1166
1168
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
1167
1169
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
1168
1170
  # rubocop:enable Style/NegatedIf
@@ -1195,7 +1197,7 @@ module OCI
1195
1197
 
1196
1198
  # Updates the specified secondary zone with your new external master
1197
1199
  # server information. For more information about secondary zone, see
1198
- # [Manage DNS Service Zone](https://docs.us-phoenix-1.oraclecloud.com/Content/DNS/Tasks/managingdnszones.htm).
1200
+ # [Manage DNS Service Zone](https://docs.cloud.oracle.com/Content/DNS/Tasks/managingdnszones.htm).
1199
1201
  #
1200
1202
  # @param [String] zone_name_or_id The name or OCID of the target zone.
1201
1203
  # @param [OCI::Dns::Models::UpdateZoneDetails] update_zone_details New data for the zone.
@@ -1233,8 +1235,8 @@ module OCI
1233
1235
 
1234
1236
  # Header Params
1235
1237
  header_params = {}
1236
- header_params['accept'] = 'application/json'
1237
- header_params['content-type'] = 'application/json'
1238
+ header_params[:accept] = 'application/json'
1239
+ header_params[:'content-type'] = 'application/json'
1238
1240
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
1239
1241
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
1240
1242
  # rubocop:enable Style/NegatedIf
@@ -1307,8 +1309,8 @@ module OCI
1307
1309
 
1308
1310
  # Header Params
1309
1311
  header_params = {}
1310
- header_params['accept'] = 'application/json'
1311
- header_params['content-type'] = 'application/json'
1312
+ header_params[:accept] = 'application/json'
1313
+ header_params[:'content-type'] = 'application/json'
1312
1314
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
1313
1315
  header_params[:'if-unmodified-since'] = opts[:if_unmodified_since] if opts[:if_unmodified_since]
1314
1316
  # rubocop:enable Style/NegatedIf