Class: OCI::Database::Models::CreateAutonomousDatabaseBase

Inherits:
Object
  • Object
show all
Defined in:
lib/oci/database/models/create_autonomous_database_base.rb

Overview

Details to create an Oracle Autonomous AI Database.

Notes: - To specify OCPU core count, you must use either ocpuCount or cpuCoreCount. You cannot use both parameters at the same time. For Autonomous AI Database Serverless instances, ocpuCount is not used. - To specify a storage allocation, you must use either dataStorageSizeInGBs or dataStorageSizeInTBs. - See the individual parameter discriptions for more information on the OCPU and storage value parameters.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

This class has direct subclasses. If you are using this class as input to a service operations then you should favor using a subclass over the base class

Constant Summary collapse

COMPUTE_MODEL_ENUM =
[
  COMPUTE_MODEL_ECPU = 'ECPU'.freeze,
  COMPUTE_MODEL_OCPU = 'OCPU'.freeze
].freeze
DB_WORKLOAD_ENUM =
[
  DB_WORKLOAD_OLTP = 'OLTP'.freeze,
  DB_WORKLOAD_DW = 'DW'.freeze,
  DB_WORKLOAD_AJD = 'AJD'.freeze,
  DB_WORKLOAD_APEX = 'APEX'.freeze,
  DB_WORKLOAD_LH = 'LH'.freeze
].freeze
LICENSE_MODEL_ENUM =
[
  LICENSE_MODEL_LICENSE_INCLUDED = 'LICENSE_INCLUDED'.freeze,
  LICENSE_MODEL_BRING_YOUR_OWN_LICENSE = 'BRING_YOUR_OWN_LICENSE'.freeze
].freeze
SOURCE_ENUM =
[
  SOURCE_NONE = 'NONE'.freeze,
  SOURCE_DATABASE = 'DATABASE'.freeze,
  SOURCE_BACKUP_FROM_ID = 'BACKUP_FROM_ID'.freeze,
  SOURCE_BACKUP_FROM_TIMESTAMP = 'BACKUP_FROM_TIMESTAMP'.freeze,
  SOURCE_UNDELETE_ADB = 'UNDELETE_ADB'.freeze,
  SOURCE_CLONE_TO_REFRESHABLE = 'CLONE_TO_REFRESHABLE'.freeze,
  SOURCE_CROSS_REGION_DATAGUARD = 'CROSS_REGION_DATAGUARD'.freeze,
  SOURCE_CROSS_REGION_DISASTER_RECOVERY = 'CROSS_REGION_DISASTER_RECOVERY'.freeze
].freeze
AUTONOMOUS_MAINTENANCE_SCHEDULE_TYPE_ENUM =
[
  AUTONOMOUS_MAINTENANCE_SCHEDULE_TYPE_EARLY = 'EARLY'.freeze,
  AUTONOMOUS_MAINTENANCE_SCHEDULE_TYPE_REGULAR = 'REGULAR'.freeze
].freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ CreateAutonomousDatabaseBase

Initializes the object

Parameters:

  • attributes (Hash) (defaults to: {})

    Model attributes in the form of hash

Options Hash (attributes):



645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 645

def initialize(attributes = {})
  return unless attributes.is_a?(Hash)

  # convert string to symbol for hash key
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }

  self.subscription_id = attributes[:'subscriptionId'] if attributes[:'subscriptionId']

  raise 'You cannot provide both :subscriptionId and :subscription_id' if attributes.key?(:'subscriptionId') && attributes.key?(:'subscription_id')

  self.subscription_id = attributes[:'subscription_id'] if attributes[:'subscription_id']

  self.compartment_id = attributes[:'compartmentId'] if attributes[:'compartmentId']

  raise 'You cannot provide both :compartmentId and :compartment_id' if attributes.key?(:'compartmentId') && attributes.key?(:'compartment_id')

  self.compartment_id = attributes[:'compartment_id'] if attributes[:'compartment_id']

  self.character_set = attributes[:'characterSet'] if attributes[:'characterSet']

  raise 'You cannot provide both :characterSet and :character_set' if attributes.key?(:'characterSet') && attributes.key?(:'character_set')

  self.character_set = attributes[:'character_set'] if attributes[:'character_set']

  self.ncharacter_set = attributes[:'ncharacterSet'] if attributes[:'ncharacterSet']

  raise 'You cannot provide both :ncharacterSet and :ncharacter_set' if attributes.key?(:'ncharacterSet') && attributes.key?(:'ncharacter_set')

  self.ncharacter_set = attributes[:'ncharacter_set'] if attributes[:'ncharacter_set']

  self.db_name = attributes[:'dbName'] if attributes[:'dbName']

  raise 'You cannot provide both :dbName and :db_name' if attributes.key?(:'dbName') && attributes.key?(:'db_name')

  self.db_name = attributes[:'db_name'] if attributes[:'db_name']

  self.cpu_core_count = attributes[:'cpuCoreCount'] if attributes[:'cpuCoreCount']

  raise 'You cannot provide both :cpuCoreCount and :cpu_core_count' if attributes.key?(:'cpuCoreCount') && attributes.key?(:'cpu_core_count')

  self.cpu_core_count = attributes[:'cpu_core_count'] if attributes[:'cpu_core_count']

  self.backup_retention_period_in_days = attributes[:'backupRetentionPeriodInDays'] if attributes[:'backupRetentionPeriodInDays']

  raise 'You cannot provide both :backupRetentionPeriodInDays and :backup_retention_period_in_days' if attributes.key?(:'backupRetentionPeriodInDays') && attributes.key?(:'backup_retention_period_in_days')

  self.backup_retention_period_in_days = attributes[:'backup_retention_period_in_days'] if attributes[:'backup_retention_period_in_days']

  self.compute_model = attributes[:'computeModel'] if attributes[:'computeModel']

  raise 'You cannot provide both :computeModel and :compute_model' if attributes.key?(:'computeModel') && attributes.key?(:'compute_model')

  self.compute_model = attributes[:'compute_model'] if attributes[:'compute_model']

  self.compute_count = attributes[:'computeCount'] if attributes[:'computeCount']

  raise 'You cannot provide both :computeCount and :compute_count' if attributes.key?(:'computeCount') && attributes.key?(:'compute_count')

  self.compute_count = attributes[:'compute_count'] if attributes[:'compute_count']

  self.ocpu_count = attributes[:'ocpuCount'] if attributes[:'ocpuCount']

  raise 'You cannot provide both :ocpuCount and :ocpu_count' if attributes.key?(:'ocpuCount') && attributes.key?(:'ocpu_count')

  self.ocpu_count = attributes[:'ocpu_count'] if attributes[:'ocpu_count']

  self.db_workload = attributes[:'dbWorkload'] if attributes[:'dbWorkload']

  raise 'You cannot provide both :dbWorkload and :db_workload' if attributes.key?(:'dbWorkload') && attributes.key?(:'db_workload')

  self.db_workload = attributes[:'db_workload'] if attributes[:'db_workload']

  self.data_storage_size_in_tbs = attributes[:'dataStorageSizeInTBs'] if attributes[:'dataStorageSizeInTBs']

  raise 'You cannot provide both :dataStorageSizeInTBs and :data_storage_size_in_tbs' if attributes.key?(:'dataStorageSizeInTBs') && attributes.key?(:'data_storage_size_in_tbs')

  self.data_storage_size_in_tbs = attributes[:'data_storage_size_in_tbs'] if attributes[:'data_storage_size_in_tbs']

  self.data_storage_size_in_gbs = attributes[:'dataStorageSizeInGBs'] if attributes[:'dataStorageSizeInGBs']

  raise 'You cannot provide both :dataStorageSizeInGBs and :data_storage_size_in_gbs' if attributes.key?(:'dataStorageSizeInGBs') && attributes.key?(:'data_storage_size_in_gbs')

  self.data_storage_size_in_gbs = attributes[:'data_storage_size_in_gbs'] if attributes[:'data_storage_size_in_gbs']

  self.is_free_tier = attributes[:'isFreeTier'] unless attributes[:'isFreeTier'].nil?
  self.is_free_tier = false if is_free_tier.nil? && !attributes.key?(:'isFreeTier') # rubocop:disable Style/StringLiterals

  raise 'You cannot provide both :isFreeTier and :is_free_tier' if attributes.key?(:'isFreeTier') && attributes.key?(:'is_free_tier')

  self.is_free_tier = attributes[:'is_free_tier'] unless attributes[:'is_free_tier'].nil?
  self.is_free_tier = false if is_free_tier.nil? && !attributes.key?(:'isFreeTier') && !attributes.key?(:'is_free_tier') # rubocop:disable Style/StringLiterals

  self.kms_key_id = attributes[:'kmsKeyId'] if attributes[:'kmsKeyId']

  raise 'You cannot provide both :kmsKeyId and :kms_key_id' if attributes.key?(:'kmsKeyId') && attributes.key?(:'kms_key_id')

  self.kms_key_id = attributes[:'kms_key_id'] if attributes[:'kms_key_id']

  self.vault_id = attributes[:'vaultId'] if attributes[:'vaultId']

  raise 'You cannot provide both :vaultId and :vault_id' if attributes.key?(:'vaultId') && attributes.key?(:'vault_id')

  self.vault_id = attributes[:'vault_id'] if attributes[:'vault_id']

  self.encryption_key = attributes[:'encryptionKey'] if attributes[:'encryptionKey']

  raise 'You cannot provide both :encryptionKey and :encryption_key' if attributes.key?(:'encryptionKey') && attributes.key?(:'encryption_key')

  self.encryption_key = attributes[:'encryption_key'] if attributes[:'encryption_key']

  self.admin_password = attributes[:'adminPassword'] if attributes[:'adminPassword']

  raise 'You cannot provide both :adminPassword and :admin_password' if attributes.key?(:'adminPassword') && attributes.key?(:'admin_password')

  self.admin_password = attributes[:'admin_password'] if attributes[:'admin_password']

  self.display_name = attributes[:'displayName'] if attributes[:'displayName']

  raise 'You cannot provide both :displayName and :display_name' if attributes.key?(:'displayName') && attributes.key?(:'display_name')

  self.display_name = attributes[:'display_name'] if attributes[:'display_name']

  self.license_model = attributes[:'licenseModel'] if attributes[:'licenseModel']

  raise 'You cannot provide both :licenseModel and :license_model' if attributes.key?(:'licenseModel') && attributes.key?(:'license_model')

  self.license_model = attributes[:'license_model'] if attributes[:'license_model']

  self.byol_compute_count_limit = attributes[:'byolComputeCountLimit'] if attributes[:'byolComputeCountLimit']

  raise 'You cannot provide both :byolComputeCountLimit and :byol_compute_count_limit' if attributes.key?(:'byolComputeCountLimit') && attributes.key?(:'byol_compute_count_limit')

  self.byol_compute_count_limit = attributes[:'byol_compute_count_limit'] if attributes[:'byol_compute_count_limit']

  self.is_preview_version_with_service_terms_accepted = attributes[:'isPreviewVersionWithServiceTermsAccepted'] unless attributes[:'isPreviewVersionWithServiceTermsAccepted'].nil?
  self.is_preview_version_with_service_terms_accepted = false if is_preview_version_with_service_terms_accepted.nil? && !attributes.key?(:'isPreviewVersionWithServiceTermsAccepted') # rubocop:disable Style/StringLiterals

  raise 'You cannot provide both :isPreviewVersionWithServiceTermsAccepted and :is_preview_version_with_service_terms_accepted' if attributes.key?(:'isPreviewVersionWithServiceTermsAccepted') && attributes.key?(:'is_preview_version_with_service_terms_accepted')

  self.is_preview_version_with_service_terms_accepted = attributes[:'is_preview_version_with_service_terms_accepted'] unless attributes[:'is_preview_version_with_service_terms_accepted'].nil?
  self.is_preview_version_with_service_terms_accepted = false if is_preview_version_with_service_terms_accepted.nil? && !attributes.key?(:'isPreviewVersionWithServiceTermsAccepted') && !attributes.key?(:'is_preview_version_with_service_terms_accepted') # rubocop:disable Style/StringLiterals

  self.is_auto_scaling_enabled = attributes[:'isAutoScalingEnabled'] unless attributes[:'isAutoScalingEnabled'].nil?
  self.is_auto_scaling_enabled = false if is_auto_scaling_enabled.nil? && !attributes.key?(:'isAutoScalingEnabled') # rubocop:disable Style/StringLiterals

  raise 'You cannot provide both :isAutoScalingEnabled and :is_auto_scaling_enabled' if attributes.key?(:'isAutoScalingEnabled') && attributes.key?(:'is_auto_scaling_enabled')

  self.is_auto_scaling_enabled = attributes[:'is_auto_scaling_enabled'] unless attributes[:'is_auto_scaling_enabled'].nil?
  self.is_auto_scaling_enabled = false if is_auto_scaling_enabled.nil? && !attributes.key?(:'isAutoScalingEnabled') && !attributes.key?(:'is_auto_scaling_enabled') # rubocop:disable Style/StringLiterals

  self.is_dev_tier = attributes[:'isDevTier'] unless attributes[:'isDevTier'].nil?
  self.is_dev_tier = false if is_dev_tier.nil? && !attributes.key?(:'isDevTier') # rubocop:disable Style/StringLiterals

  raise 'You cannot provide both :isDevTier and :is_dev_tier' if attributes.key?(:'isDevTier') && attributes.key?(:'is_dev_tier')

  self.is_dev_tier = attributes[:'is_dev_tier'] unless attributes[:'is_dev_tier'].nil?
  self.is_dev_tier = false if is_dev_tier.nil? && !attributes.key?(:'isDevTier') && !attributes.key?(:'is_dev_tier') # rubocop:disable Style/StringLiterals

  self.is_dedicated = attributes[:'isDedicated'] unless attributes[:'isDedicated'].nil?

  raise 'You cannot provide both :isDedicated and :is_dedicated' if attributes.key?(:'isDedicated') && attributes.key?(:'is_dedicated')

  self.is_dedicated = attributes[:'is_dedicated'] unless attributes[:'is_dedicated'].nil?

  self.autonomous_container_database_id = attributes[:'autonomousContainerDatabaseId'] if attributes[:'autonomousContainerDatabaseId']

  raise 'You cannot provide both :autonomousContainerDatabaseId and :autonomous_container_database_id' if attributes.key?(:'autonomousContainerDatabaseId') && attributes.key?(:'autonomous_container_database_id')

  self.autonomous_container_database_id = attributes[:'autonomous_container_database_id'] if attributes[:'autonomous_container_database_id']

  self.in_memory_percentage = attributes[:'inMemoryPercentage'] if attributes[:'inMemoryPercentage']

  raise 'You cannot provide both :inMemoryPercentage and :in_memory_percentage' if attributes.key?(:'inMemoryPercentage') && attributes.key?(:'in_memory_percentage')

  self.in_memory_percentage = attributes[:'in_memory_percentage'] if attributes[:'in_memory_percentage']

  self.is_access_control_enabled = attributes[:'isAccessControlEnabled'] unless attributes[:'isAccessControlEnabled'].nil?

  raise 'You cannot provide both :isAccessControlEnabled and :is_access_control_enabled' if attributes.key?(:'isAccessControlEnabled') && attributes.key?(:'is_access_control_enabled')

  self.is_access_control_enabled = attributes[:'is_access_control_enabled'] unless attributes[:'is_access_control_enabled'].nil?

  self.whitelisted_ips = attributes[:'whitelistedIps'] if attributes[:'whitelistedIps']

  raise 'You cannot provide both :whitelistedIps and :whitelisted_ips' if attributes.key?(:'whitelistedIps') && attributes.key?(:'whitelisted_ips')

  self.whitelisted_ips = attributes[:'whitelisted_ips'] if attributes[:'whitelisted_ips']

  self.are_primary_whitelisted_ips_used = attributes[:'arePrimaryWhitelistedIpsUsed'] unless attributes[:'arePrimaryWhitelistedIpsUsed'].nil?

  raise 'You cannot provide both :arePrimaryWhitelistedIpsUsed and :are_primary_whitelisted_ips_used' if attributes.key?(:'arePrimaryWhitelistedIpsUsed') && attributes.key?(:'are_primary_whitelisted_ips_used')

  self.are_primary_whitelisted_ips_used = attributes[:'are_primary_whitelisted_ips_used'] unless attributes[:'are_primary_whitelisted_ips_used'].nil?

  self.standby_whitelisted_ips = attributes[:'standbyWhitelistedIps'] if attributes[:'standbyWhitelistedIps']

  raise 'You cannot provide both :standbyWhitelistedIps and :standby_whitelisted_ips' if attributes.key?(:'standbyWhitelistedIps') && attributes.key?(:'standby_whitelisted_ips')

  self.standby_whitelisted_ips = attributes[:'standby_whitelisted_ips'] if attributes[:'standby_whitelisted_ips']

  self.is_data_guard_enabled = attributes[:'isDataGuardEnabled'] unless attributes[:'isDataGuardEnabled'].nil?

  raise 'You cannot provide both :isDataGuardEnabled and :is_data_guard_enabled' if attributes.key?(:'isDataGuardEnabled') && attributes.key?(:'is_data_guard_enabled')

  self.is_data_guard_enabled = attributes[:'is_data_guard_enabled'] unless attributes[:'is_data_guard_enabled'].nil?

  self.is_local_data_guard_enabled = attributes[:'isLocalDataGuardEnabled'] unless attributes[:'isLocalDataGuardEnabled'].nil?

  raise 'You cannot provide both :isLocalDataGuardEnabled and :is_local_data_guard_enabled' if attributes.key?(:'isLocalDataGuardEnabled') && attributes.key?(:'is_local_data_guard_enabled')

  self.is_local_data_guard_enabled = attributes[:'is_local_data_guard_enabled'] unless attributes[:'is_local_data_guard_enabled'].nil?

  self.subnet_id = attributes[:'subnetId'] if attributes[:'subnetId']

  raise 'You cannot provide both :subnetId and :subnet_id' if attributes.key?(:'subnetId') && attributes.key?(:'subnet_id')

  self.subnet_id = attributes[:'subnet_id'] if attributes[:'subnet_id']

  self.nsg_ids = attributes[:'nsgIds'] if attributes[:'nsgIds']

  raise 'You cannot provide both :nsgIds and :nsg_ids' if attributes.key?(:'nsgIds') && attributes.key?(:'nsg_ids')

  self.nsg_ids = attributes[:'nsg_ids'] if attributes[:'nsg_ids']

  self.private_endpoint_label = attributes[:'privateEndpointLabel'] if attributes[:'privateEndpointLabel']

  raise 'You cannot provide both :privateEndpointLabel and :private_endpoint_label' if attributes.key?(:'privateEndpointLabel') && attributes.key?(:'private_endpoint_label')

  self.private_endpoint_label = attributes[:'private_endpoint_label'] if attributes[:'private_endpoint_label']

  self.freeform_tags = attributes[:'freeformTags'] if attributes[:'freeformTags']

  raise 'You cannot provide both :freeformTags and :freeform_tags' if attributes.key?(:'freeformTags') && attributes.key?(:'freeform_tags')

  self.freeform_tags = attributes[:'freeform_tags'] if attributes[:'freeform_tags']

  self.defined_tags = attributes[:'definedTags'] if attributes[:'definedTags']

  raise 'You cannot provide both :definedTags and :defined_tags' if attributes.key?(:'definedTags') && attributes.key?(:'defined_tags')

  self.defined_tags = attributes[:'defined_tags'] if attributes[:'defined_tags']

  self.security_attributes = attributes[:'securityAttributes'] if attributes[:'securityAttributes']

  raise 'You cannot provide both :securityAttributes and :security_attributes' if attributes.key?(:'securityAttributes') && attributes.key?(:'security_attributes')

  self.security_attributes = attributes[:'security_attributes'] if attributes[:'security_attributes']

  self.private_endpoint_ip = attributes[:'privateEndpointIp'] if attributes[:'privateEndpointIp']

  raise 'You cannot provide both :privateEndpointIp and :private_endpoint_ip' if attributes.key?(:'privateEndpointIp') && attributes.key?(:'private_endpoint_ip')

  self.private_endpoint_ip = attributes[:'private_endpoint_ip'] if attributes[:'private_endpoint_ip']

  self.db_version = attributes[:'dbVersion'] if attributes[:'dbVersion']

  raise 'You cannot provide both :dbVersion and :db_version' if attributes.key?(:'dbVersion') && attributes.key?(:'db_version')

  self.db_version = attributes[:'db_version'] if attributes[:'db_version']

  self.source = attributes[:'source'] if attributes[:'source']
  self.source = "NONE" if source.nil? && !attributes.key?(:'source') # rubocop:disable Style/StringLiterals

  self.customer_contacts = attributes[:'customerContacts'] if attributes[:'customerContacts']

  raise 'You cannot provide both :customerContacts and :customer_contacts' if attributes.key?(:'customerContacts') && attributes.key?(:'customer_contacts')

  self.customer_contacts = attributes[:'customer_contacts'] if attributes[:'customer_contacts']

  self.is_mtls_connection_required = attributes[:'isMtlsConnectionRequired'] unless attributes[:'isMtlsConnectionRequired'].nil?

  raise 'You cannot provide both :isMtlsConnectionRequired and :is_mtls_connection_required' if attributes.key?(:'isMtlsConnectionRequired') && attributes.key?(:'is_mtls_connection_required')

  self.is_mtls_connection_required = attributes[:'is_mtls_connection_required'] unless attributes[:'is_mtls_connection_required'].nil?

  self.resource_pool_leader_id = attributes[:'resourcePoolLeaderId'] if attributes[:'resourcePoolLeaderId']

  raise 'You cannot provide both :resourcePoolLeaderId and :resource_pool_leader_id' if attributes.key?(:'resourcePoolLeaderId') && attributes.key?(:'resource_pool_leader_id')

  self.resource_pool_leader_id = attributes[:'resource_pool_leader_id'] if attributes[:'resource_pool_leader_id']

  self.resource_pool_summary = attributes[:'resourcePoolSummary'] if attributes[:'resourcePoolSummary']

  raise 'You cannot provide both :resourcePoolSummary and :resource_pool_summary' if attributes.key?(:'resourcePoolSummary') && attributes.key?(:'resource_pool_summary')

  self.resource_pool_summary = attributes[:'resource_pool_summary'] if attributes[:'resource_pool_summary']

  self.autonomous_maintenance_schedule_type = attributes[:'autonomousMaintenanceScheduleType'] if attributes[:'autonomousMaintenanceScheduleType']

  raise 'You cannot provide both :autonomousMaintenanceScheduleType and :autonomous_maintenance_schedule_type' if attributes.key?(:'autonomousMaintenanceScheduleType') && attributes.key?(:'autonomous_maintenance_schedule_type')

  self.autonomous_maintenance_schedule_type = attributes[:'autonomous_maintenance_schedule_type'] if attributes[:'autonomous_maintenance_schedule_type']

  self.autonomous_database_maintenance_window = attributes[:'autonomousDatabaseMaintenanceWindow'] if attributes[:'autonomousDatabaseMaintenanceWindow']

  raise 'You cannot provide both :autonomousDatabaseMaintenanceWindow and :autonomous_database_maintenance_window' if attributes.key?(:'autonomousDatabaseMaintenanceWindow') && attributes.key?(:'autonomous_database_maintenance_window')

  self.autonomous_database_maintenance_window = attributes[:'autonomous_database_maintenance_window'] if attributes[:'autonomous_database_maintenance_window']

  self.scheduled_operations = attributes[:'scheduledOperations'] if attributes[:'scheduledOperations']

  raise 'You cannot provide both :scheduledOperations and :scheduled_operations' if attributes.key?(:'scheduledOperations') && attributes.key?(:'scheduled_operations')

  self.scheduled_operations = attributes[:'scheduled_operations'] if attributes[:'scheduled_operations']

  self.is_auto_scaling_for_storage_enabled = attributes[:'isAutoScalingForStorageEnabled'] unless attributes[:'isAutoScalingForStorageEnabled'].nil?

  raise 'You cannot provide both :isAutoScalingForStorageEnabled and :is_auto_scaling_for_storage_enabled' if attributes.key?(:'isAutoScalingForStorageEnabled') && attributes.key?(:'is_auto_scaling_for_storage_enabled')

  self.is_auto_scaling_for_storage_enabled = attributes[:'is_auto_scaling_for_storage_enabled'] unless attributes[:'is_auto_scaling_for_storage_enabled'].nil?

  self.database_edition = attributes[:'databaseEdition'] if attributes[:'databaseEdition']

  raise 'You cannot provide both :databaseEdition and :database_edition' if attributes.key?(:'databaseEdition') && attributes.key?(:'database_edition')

  self.database_edition = attributes[:'database_edition'] if attributes[:'database_edition']

  self.db_tools_details = attributes[:'dbToolsDetails'] if attributes[:'dbToolsDetails']

  raise 'You cannot provide both :dbToolsDetails and :db_tools_details' if attributes.key?(:'dbToolsDetails') && attributes.key?(:'db_tools_details')

  self.db_tools_details = attributes[:'db_tools_details'] if attributes[:'db_tools_details']

  self.is_backup_retention_locked = attributes[:'isBackupRetentionLocked'] unless attributes[:'isBackupRetentionLocked'].nil?

  raise 'You cannot provide both :isBackupRetentionLocked and :is_backup_retention_locked' if attributes.key?(:'isBackupRetentionLocked') && attributes.key?(:'is_backup_retention_locked')

  self.is_backup_retention_locked = attributes[:'is_backup_retention_locked'] unless attributes[:'is_backup_retention_locked'].nil?

  self.secret_id = attributes[:'secretId'] if attributes[:'secretId']

  raise 'You cannot provide both :secretId and :secret_id' if attributes.key?(:'secretId') && attributes.key?(:'secret_id')

  self.secret_id = attributes[:'secret_id'] if attributes[:'secret_id']

  self.secret_version_number = attributes[:'secretVersionNumber'] if attributes[:'secretVersionNumber']

  raise 'You cannot provide both :secretVersionNumber and :secret_version_number' if attributes.key?(:'secretVersionNumber') && attributes.key?(:'secret_version_number')

  self.secret_version_number = attributes[:'secret_version_number'] if attributes[:'secret_version_number']

  self.transportable_tablespace = attributes[:'transportableTablespace'] if attributes[:'transportableTablespace']

  raise 'You cannot provide both :transportableTablespace and :transportable_tablespace' if attributes.key?(:'transportableTablespace') && attributes.key?(:'transportable_tablespace')

  self.transportable_tablespace = attributes[:'transportable_tablespace'] if attributes[:'transportable_tablespace']
end

Instance Attribute Details

#admin_passwordString

Important The adminPassword or secretId must be specified for all Autonomous AI Databases except for refreshable clones. The password must be between 12 and 30 characters long, and must contain at least 1 uppercase, 1 lowercase, and 1 numeric character. It cannot contain the double quote symbol (") or the username "admin", regardless of casing.

This cannot be used in conjunction with with OCI vault secrets (secretId).

Returns:

  • (String)


173
174
175
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 173

def admin_password
  @admin_password
end

#are_primary_whitelisted_ips_usedBOOLEAN

This field will be null if the Autonomous AI Database is not Data Guard enabled or Access Control is disabled. It's value would be TRUE if Autonomous AI Database is Data Guard enabled and Access Control is enabled and if the Autonomous AI Database uses primary IP access control list (ACL) for standby. It's value would be FALSE if Autonomous AI Database is Data Guard enabled and Access Control is enabled and if the Autonomous AI Database uses different IP access control list (ACL) for standby compared to primary.

Returns:

  • (BOOLEAN)


254
255
256
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 254

def are_primary_whitelisted_ips_used
  @are_primary_whitelisted_ips_used
end

#autonomous_container_database_idString

The Autonomous Container Database OCID. Used only by Autonomous AI Database on Dedicated Exadata Infrastructure.

Returns:

  • (String)


215
216
217
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 215

def autonomous_container_database_id
  @autonomous_container_database_id
end

#autonomous_database_maintenance_windowOCI::Database::Models::AutonomousDatabaseMaintenanceWindowSummary



388
389
390
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 388

def autonomous_database_maintenance_window
  @autonomous_database_maintenance_window
end

#autonomous_maintenance_schedule_typeString

The maintenance schedule type of the Autonomous AI Database Serverless. An EARLY maintenance schedule follows a schedule applying patches prior to the REGULAR schedule. A REGULAR maintenance schedule follows the normal cycle

Returns:

  • (String)


385
386
387
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 385

def autonomous_maintenance_schedule_type
  @autonomous_maintenance_schedule_type
end

#backup_retention_period_in_daysInteger

Retention period, in days, for long-term backups

Returns:

  • (Integer)


91
92
93
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 91

def backup_retention_period_in_days
  @backup_retention_period_in_days
end

#byol_compute_count_limitFloat

The maximum number of CPUs allowed with a Bring Your Own License (BYOL), including those used for auto-scaling, disaster recovery, tools, etc. Any CPU usage above this limit is considered as License Included and billed.

Returns:

  • (Float)


191
192
193
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 191

def byol_compute_count_limit
  @byol_compute_count_limit
end

#character_setString

The character set for the Autonomous AI Database. The default is AL32UTF8. Allowed values for an Autonomous AI Database Serverless instance as as returned by List Autonomous AI Database Character Sets

For an Autonomous AI Database on dedicated infrastructure, the allowed values are:

AL32UTF8, AR8ADOS710, AR8ADOS720, AR8APTEC715, AR8ARABICMACS, AR8ASMO8X, AR8ISO8859P6, AR8MSWIN1256, AR8MUSSAD768, AR8NAFITHA711, AR8NAFITHA721, AR8SAKHR706, AR8SAKHR707, AZ8ISO8859P9E, BG8MSWIN, BG8PC437S, BLT8CP921, BLT8ISO8859P13, BLT8MSWIN1257, BLT8PC775, BN8BSCII, CDN8PC863, CEL8ISO8859P14, CL8ISO8859P5, CL8ISOIR111, CL8KOI8R, CL8KOI8U, CL8MACCYRILLICS, CL8MSWIN1251, EE8ISO8859P2, EE8MACCES, EE8MACCROATIANS, EE8MSWIN1250, EE8PC852, EL8DEC, EL8ISO8859P7, EL8MACGREEKS, EL8MSWIN1253, EL8PC437S, EL8PC851, EL8PC869, ET8MSWIN923, HU8ABMOD, HU8CWI2, IN8ISCII, IS8PC861, IW8ISO8859P8, IW8MACHEBREWS, IW8MSWIN1255, IW8PC1507, JA16EUC, JA16EUCTILDE, JA16SJIS, JA16SJISTILDE, JA16VMS, KO16KSC5601, KO16KSCCS, KO16MSWIN949, LA8ISO6937, LA8PASSPORT, LT8MSWIN921, LT8PC772, LT8PC774, LV8PC1117, LV8PC8LR, LV8RST104090, N8PC865, NE8ISO8859P10, NEE8ISO8859P4, RU8BESTA, RU8PC855, RU8PC866, SE8ISO8859P3, TH8MACTHAIS, TH8TISASCII, TR8DEC, TR8MACTURKISHS, TR8MSWIN1254, TR8PC857, US7ASCII, US8PC437, UTF8, VN8MSWIN1258, VN8VN3, WE8DEC, WE8DG, WE8ISO8859P1, WE8ISO8859P15, WE8ISO8859P9, WE8MACROMAN8S, WE8MSWIN1252, WE8NCR4970, WE8NEXTSTEP, WE8PC850, WE8PC858, WE8PC860, WE8ROMAN8, ZHS16CGB231280, ZHS16GBK, ZHT16BIG5, ZHT16CCDC, ZHT16DBT, ZHT16HKSCS, ZHT16MSWIN950, ZHT32EUC, ZHT32SOPS, ZHT32TRIS

Returns:

  • (String)


69
70
71
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 69

def character_set
  @character_set
end

#compartment_idString

[Required] The OCID of the compartment of the Autonomous AI Database.

Returns:

  • (String)


60
61
62
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 60

def compartment_id
  @compartment_id
end

#compute_countFloat

The compute amount (CPUs) available to the database. Minimum and maximum values depend on the compute model and whether the database is an Autonomous AI Database Serverless instance or an Autonomous AI Database on Dedicated Exadata Infrastructure. The 'ECPU' compute model requires a minimum value of one, for databases in the elastic resource pool and minimum value of two, otherwise. Required when using the computeModel parameter. When using cpuCoreCount parameter, it is an error to specify computeCount to a non-null value. Providing computeModel and computeCount is the preferred method for both OCPU and ECPU.

Returns:

  • (Float)


101
102
103
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 101

def compute_count
  @compute_count
end

#compute_modelString

The compute model of the Autonomous AI Database. This is required if using the computeCount parameter. If using cpuCoreCount then it is an error to specify computeModel to a non-null value. ECPU compute model is the recommended model and OCPU compute model is legacy.

Returns:

  • (String)


95
96
97
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 95

def compute_model
  @compute_model
end

#cpu_core_countInteger

The number of CPU cores to be made available to the database. For Autonomous AI Databases on dedicated Exadata infrastructure, the maximum number of cores is determined by the infrastructure shape. See Characteristics of Infrastructure Shapes for shape details.

Note: This parameter cannot be used with the ocpuCount parameter.

Returns:

  • (Integer)


87
88
89
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 87

def cpu_core_count
  @cpu_core_count
end

#customer_contactsArray<OCI::Database::Models::CustomerContact>

Customer Contacts.



357
358
359
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 357

def customer_contacts
  @customer_contacts
end

#data_storage_size_in_gbsInteger

The size, in gigabytes, of the data volume that will be created and attached to the database. This storage can later be scaled up if needed. The maximum storage value is determined by the infrastructure shape. See Characteristics of Infrastructure Shapes for shape details.

Notes - This parameter is only supported for dedicated Exadata infrastructure. - This parameter cannot be used with the dataStorageSizeInTBs parameter.

Returns:

  • (Integer)


148
149
150
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 148

def data_storage_size_in_gbs
  @data_storage_size_in_gbs
end

#data_storage_size_in_tbsInteger

The size, in terabytes, of the data volume that will be created and attached to the database. This storage can later be scaled up if needed. For Autonomous AI Databases on dedicated Exadata infrastructure, the maximum storage value is determined by the infrastructure shape. See Characteristics of Infrastructure Shapes for shape details. A full Exadata service is allocated when the Autonomous AI Database size is set to the upper limit (384 TB).

Note: This parameter cannot be used with the dataStorageSizeInGBs parameter.

Returns:

  • (Integer)


139
140
141
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 139

def data_storage_size_in_tbs
  @data_storage_size_in_tbs
end

#database_editionString

The Oracle AI Database Edition that applies to the Autonomous AI Databases. This parameter accepts options STANDARD_EDITION and ENTERPRISE_EDITION.

Returns:

  • (String)


405
406
407
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 405

def database_edition
  @database_edition
end

#db_nameString

The database name. The name must begin with an alphabetic character and can contain a maximum of 30 alphanumeric characters. Special characters are not permitted. The database name must be unique in the tenancy. It is required in all cases except when creating a cross-region Autonomous Data Guard standby instance or a cross-region disaster recovery standby instance.

Returns:

  • (String)


80
81
82
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 80

def db_name
  @db_name
end

#db_tools_detailsArray<OCI::Database::Models::DatabaseTool>

The list of database tools details.

This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, whitelistedIps, isMTLSConnectionRequired, openMode, permissionLevel, dbWorkload, privateEndpointLabel, nsgIds, dbVersion, isRefreshable, dbName, scheduledOperations, isLocalDataGuardEnabled, or isFreeTier.



412
413
414
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 412

def db_tools_details
  @db_tools_details
end

#db_versionString

A valid Oracle AI Database version for Autonomous AI Database. When you specify 23ai for dbversion, the system will provision a 23ai database, but the UI will display it as 26ai. When you specify 26ai for dbversion, the system will provision and display a 26ai database as expected. For new databases, it is recommended to use either 19c or 26ai.

Note Starting December 2026, 23ai will not be supported as a valid value for this parameter.

Returns:

  • (String)


346
347
348
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 346

def db_version
  @db_version
end

#db_workloadString

The Autonomous AI Database workload type. The following values are valid: - OLTP - indicates an Autonomous AI Transaction Processing database - DW - indicates an Autonomous AI Lakehouse database - AJD - indicates an Autonomous AI JSON Database - APEX - indicates an Autonomous AI Database with the Oracle APEX AI Application Development workload type. - LH - indicates an Oracle Autonomous AI Lakehouse database

Note Starting December 2026, DW will not be supported as a valid value for this parameter. When creating an Autonomous AI Database, if this parameter is not specified, the default value is OLTP.

This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, adminPassword, whitelistedIps, isMTLSConnectionRequired, privateEndpointLabel, nsgIds, dbVersion, isRefreshable, dbName, scheduledOperations, dbToolsDetails, isLocalDataGuardEnabled, or isFreeTier.

Returns:

  • (String)


131
132
133
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 131

def db_workload
  @db_workload
end

#defined_tagsHash<String, Hash<String, Object>>

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags.

Returns:

  • (Hash<String, Hash<String, Object>>)


325
326
327
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 325

def defined_tags
  @defined_tags
end

#display_nameString

The user-friendly name for the Autonomous AI Database. The name does not have to be unique.

Returns:

  • (String)


177
178
179
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 177

def display_name
  @display_name
end

#encryption_keyOCI::Database::Models::AutonomousDatabaseEncryptionKeyDetails



166
167
168
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 166

def encryption_key
  @encryption_key
end

#freeform_tagsHash<String, String>

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.

Example: {\"Department\": \"Finance\"}

Returns:

  • (Hash<String, String>)


319
320
321
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 319

def freeform_tags
  @freeform_tags
end

#in_memory_percentageInteger

The percentage of the System Global Area(SGA) assigned to In-Memory tables in Autonomous AI Database. This property is applicable only to Autonomous AI Databases on the Exadata Cloud@Customer platform.

Returns:

  • (Integer)


219
220
221
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 219

def in_memory_percentage
  @in_memory_percentage
end

#is_access_control_enabledBOOLEAN

Indicates if the database-level access control is enabled. If disabled, database access is defined by the network security rules. If enabled, database access is restricted to the IP addresses defined by the rules specified with the whitelistedIps property. While specifying whitelistedIps rules is optional, if database-level access control is enabled and no rules are specified, the database will become inaccessible. The rules can be added later using the UpdateAutonomousDatabase API operation or edit option in console. When creating a database clone, the desired access control setting should be specified. By default, database-level access control will be disabled for the clone.

This property is applicable only to Autonomous AI Databases on the Exadata Cloud@Customer platform. For Autonomous AI Database Serverless instances, whitelistedIps is used.

Returns:

  • (BOOLEAN)


230
231
232
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 230

def is_access_control_enabled
  @is_access_control_enabled
end

#is_auto_scaling_enabledBOOLEAN

Indicates if auto scaling is enabled for the Autonomous AI Database CPU core count. The default value is TRUE.

Returns:

  • (BOOLEAN)


201
202
203
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 201

def is_auto_scaling_enabled
  @is_auto_scaling_enabled
end

#is_auto_scaling_for_storage_enabledBOOLEAN

Indicates if auto scaling is enabled for the Autonomous AI Database storage. The default value is FALSE.

Returns:

  • (BOOLEAN)


400
401
402
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 400

def is_auto_scaling_for_storage_enabled
  @is_auto_scaling_for_storage_enabled
end

#is_backup_retention_lockedBOOLEAN

True if the Autonomous AI Database is backup retention locked.

Returns:

  • (BOOLEAN)


416
417
418
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 416

def is_backup_retention_locked
  @is_backup_retention_locked
end

#is_data_guard_enabledBOOLEAN

Deprecated. Indicates whether the Autonomous AI Database has local (in-region) Data Guard enabled. Not applicable to cross-region Autonomous Data Guard associations, or to Autonomous AI Databases using dedicated Exadata infrastructure or Exadata Cloud@Customer infrastructure.

Returns:

  • (BOOLEAN)


276
277
278
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 276

def is_data_guard_enabled
  @is_data_guard_enabled
end

#is_dedicatedBOOLEAN

True if the database is on dedicated Exadata infrastructure.

Returns:

  • (BOOLEAN)


211
212
213
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 211

def is_dedicated
  @is_dedicated
end

#is_dev_tierBOOLEAN

Autonomous AI Database for Developers are fixed-shape Autonomous AI Databases that developers can use to build and test new applications. On Serverless, these are low-cost and billed per instance, on Dedicated and Cloud@Customer there is no additional cost to create Developer databases. Developer databases come with limited resources and is not intended for large-scale testing and production deployments. When you need more compute or storage resources, you may upgrade to a full paid production database.

Returns:

  • (BOOLEAN)


206
207
208
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 206

def is_dev_tier
  @is_dev_tier
end

#is_free_tierBOOLEAN

Indicates if this is an Always Free resource. The default value is false. Note that Always Free Autonomous AI Databases have 1 CPU and 20GB of memory. For Always Free databases, memory and CPU cannot be scaled.

This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, adminPassword, whitelistedIps, isMTLSConnectionRequired, openMode, permissionLevel, privateEndpointLabel, nsgIds, dbVersion, isRefreshable, dbName, scheduledOperations, dbToolsDetails, or isLocalDataGuardEnabled

Returns:

  • (BOOLEAN)


155
156
157
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 155

def is_free_tier
  @is_free_tier
end

#is_local_data_guard_enabledBOOLEAN

Indicates whether the Autonomous AI Database has local (in-region) Data Guard enabled. Not applicable to cross-region Autonomous Data Guard associations, or to Autonomous AI Databases using dedicated Exadata infrastructure or Exadata Cloud@Customer infrastructure.

Returns:

  • (BOOLEAN)


280
281
282
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 280

def is_local_data_guard_enabled
  @is_local_data_guard_enabled
end

#is_mtls_connection_requiredBOOLEAN

Specifies if the Autonomous AI Database requires mTLS connections.

This may not be updated in parallel with any of the following: licenseModel, databaseEdition, cpuCoreCount, computeCount, dataStorageSizeInTBs, whitelistedIps, openMode, permissionLevel, db-workload, privateEndpointLabel, nsgIds, customerContacts, dbVersion, scheduledOperations, dbToolsDetails, isLocalDataGuardEnabled, or isFreeTier.

Service Change: The default value of the isMTLSConnectionRequired attribute will change from true to false on July 1, 2023 in the following APIs: - CreateAutonomousDatabase - GetAutonomousDatabase - UpdateAutonomousDatabase Details: Prior to the July 1, 2023 change, the isMTLSConnectionRequired attribute default value was true. This applies to Autonomous AI Database Serverless. Does this impact me? If you use or maintain custom scripts or Terraform scripts referencing the CreateAutonomousDatabase, GetAutonomousDatabase, or UpdateAutonomousDatabase APIs, you want to check, and possibly modify, the scripts for the changed default value of the attribute. Should you choose not to leave your scripts unchanged, the API calls containing this attribute will continue to work, but the default value will switch from true to false. How do I make this change? Using either OCI SDKs or command line tools, update your custom scripts to explicitly set the isMTLSConnectionRequired attribute to true.

Returns:

  • (BOOLEAN)


372
373
374
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 372

def is_mtls_connection_required
  @is_mtls_connection_required
end

#is_preview_version_with_service_terms_acceptedBOOLEAN

If set to TRUE, indicates that an Autonomous AI Database preview version is being provisioned, and that the preview version's terms of service have been accepted. Note that preview version software is only available for Autonomous AI Database Serverless instances (docs.oracle.com/en/cloud/paas/autonomous-database/serverless/).

Returns:

  • (BOOLEAN)


196
197
198
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 196

def is_preview_version_with_service_terms_accepted
  @is_preview_version_with_service_terms_accepted
end

#kms_key_idString

The OCID of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations.

Returns:

  • (String)


159
160
161
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 159

def kms_key_id
  @kms_key_id
end

#license_modelString

The Oracle license model that applies to the Oracle Autonomous AI Database. Bring your own license (BYOL) allows you to apply your current on-premises Oracle software licenses to equivalent, highly automated Oracle services in the cloud. License Included allows you to subscribe to new Oracle AI Database software licenses and the Oracle AI Database service. Note that when provisioning an Autonomous AI Database on dedicated Exadata infrastructure, this attribute must be null. It is already set at the Autonomous Exadata Infrastructure level. When provisioning an [Autonomous AI Database Serverless] (docs.oracle.com/en/cloud/paas/autonomous-database/index.html) database, if a value is not specified, the system defaults the value to BRING_YOUR_OWN_LICENSE. Bring your own license (BYOL) also allows you to select the DB edition using the optional parameter.

This cannot be updated in parallel with any of the following: cpuCoreCount, computeCount, dataStorageSizeInTBs, adminPassword, isMTLSConnectionRequired, dbWorkload, privateEndpointLabel, nsgIds, dbVersion, dbName, scheduledOperations, dbToolsDetails, or isFreeTier.

Returns:

  • (String)


187
188
189
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 187

def license_model
  @license_model
end

#ncharacter_setString

The character set for the Autonomous AI Database. The default is AL32UTF8. Use List Autonomous AI Database Character Sets to list the allowed values for an Autonomous AI Database Serverless instance. For an Autonomous AI Database on dedicated Exadata infrastructure, the allowed values are: AL16UTF16 or UTF8.

Returns:

  • (String)


76
77
78
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 76

def ncharacter_set
  @ncharacter_set
end

#nsg_idsArray<String>

The list of OCIDs for the network security groups (NSGs) to which this resource belongs. Setting this to an empty list removes all resources from all NSGs. For more information about NSGs, see Security Rules. NsgIds restrictions: - A network security group (NSG) is optional for Autonomous AI Databases with private access. The nsgIds list can be empty.

Returns:

  • (Array<String>)


301
302
303
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 301

def nsg_ids
  @nsg_ids
end

#ocpu_countFloat

The number of OCPU cores to be made available to the database.

The following points apply: - For Autonomous AI Databases on Dedicated Exadata infrastructure, to provision less than 1 core, enter a fractional value in an increment of 0.1. For example, you can provision 0.3 or 0.4 cores, but not 0.35 cores. (Note that fractional OCPU values are not supported for Autonomous AI Database Serverless instances.) - To provision 1 or more cores, you must enter an integer between 1 and the maximum number of cores available for the infrastructure shape. For example, you can provision 2 cores or 3 cores, but not 2.5 cores. This applies to an Autonomous AI Database Serverless instance or an Autonomous AI Database on Dedicated Exadata Infrastructure. - For Autonomous AI Database Serverless instances, this parameter is not used.

For Autonomous AI Databases on Dedicated Exadata infrastructure, the maximum number of cores is determined by the infrastructure shape. See Characteristics of Infrastructure Shapes for shape details.

Note: This parameter cannot be used with the cpuCoreCount parameter.

Returns:

  • (Float)


115
116
117
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 115

def ocpu_count
  @ocpu_count
end

#private_endpoint_ipString

The private endpoint Ip address for the resource.

Returns:

  • (String)


336
337
338
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 336

def private_endpoint_ip
  @private_endpoint_ip
end

#private_endpoint_labelString

The resource's private endpoint label. - Setting the endpoint label to a non-empty string creates a private endpoint database. - Resetting the endpoint label to an empty string, after the creation of the private endpoint database, changes the private endpoint database to a public endpoint database. - Setting the endpoint label to a non-empty string value, updates to a new private endpoint database, when the database is disabled and re-enabled.

This setting cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, adminPassword, whitelistedIps, isMTLSConnectionRequired, dbWorkload, dbVersion, isRefreshable, dbName, scheduledOperations, dbToolsDetails, or isFreeTier.

Returns:

  • (String)


311
312
313
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 311

def private_endpoint_label
  @private_endpoint_label
end

#resource_pool_leader_idString

The unique identifier for leader Autonomous AI Database OCID OCID.

Returns:

  • (String)


376
377
378
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 376

def resource_pool_leader_id
  @resource_pool_leader_id
end

#resource_pool_summaryOCI::Database::Models::ResourcePoolSummary



379
380
381
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 379

def resource_pool_summary
  @resource_pool_summary
end

#scheduled_operationsArray<OCI::Database::Models::ScheduledOperationDetails>

The list of scheduled operations. Consists of values such as dayOfWeek, scheduledStartTime, scheduledStopTime.

This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, whitelistedIps, isMTLSConnectionRequired, openMode, permissionLevel, dbWorkload, privateEndpointLabel, nsgIds, dbVersion, isRefreshable, dbName, dbToolsDetails, isLocalDataGuardEnabled, or isFreeTier.



395
396
397
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 395

def scheduled_operations
  @scheduled_operations
end

#secret_idString

The OCI vault secret [/Content/General/Concepts/identifiers.htm]OCID.

This cannot be used in conjunction with adminPassword.

Returns:

  • (String)


423
424
425
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 423

def secret_id
  @secret_id
end

#secret_version_numberInteger

The version of the vault secret. If no version is specified, the latest version will be used.

Returns:

  • (Integer)


427
428
429
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 427

def secret_version_number
  @secret_version_number
end

#security_attributesHash<String, Hash<String, Object>>

Security Attributes for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {\"Oracle-ZPR\": {\"MaxEgressCount\": {\"value\": \"42\", \"mode\": \"audit\"}}}

Returns:

  • (Hash<String, Hash<String, Object>>)


332
333
334
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 332

def security_attributes
  @security_attributes
end

#sourceString

The source of the database: Use NONE for creating a new Autonomous AI Database. Use DATABASE for creating a new Autonomous AI Database by cloning an existing Autonomous AI Database. Use CROSS_REGION_DATAGUARD to create a standby Data Guard database in another region.

For Autonomous AI Database Serverless instances, the following cloning options are available: Use BACKUP_FROM_ID for creating a new Autonomous AI Database from a specified backup. Use BACKUP_FROM_TIMESTAMP for creating a point-in-time Autonomous AI Database clone using backups. For more information, see Cloning and Moving an Autonomous AI Database.

Returns:

  • (String)


353
354
355
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 353

def source
  @source
end

#standby_whitelisted_ipsArray<String>

The client IP access control list (ACL). This feature is available for [Autonomous AI Database Serverless] (docs.oracle.com/en/cloud/paas/autonomous-database/index.html) and on Exadata Cloud@Customer. Only clients connecting from an IP address included in the ACL may access the Autonomous AI Database instance. If arePrimaryWhitelistedIpsUsed is 'TRUE' then Autonomous AI Database uses this primary's IP access control list (ACL) for the disaster recovery peer called standbywhitelistedips.

For Autonomous AI Database Serverless, this is an array of CIDR (classless inter-domain routing) notations for a subnet or VCN OCID (virtual cloud network Oracle Cloud ID). Multiple IPs and VCN OCIDs should be separate strings separated by commas, but if itu2019s other configurations that need multiple pieces of information then its each piece is connected with semicolon (;) as a delimiter. Example: [\"1.1.1.1\",\"1.1.1.0/24\",\"ocid1.vcn.oc1.sea.<unique_id>\",\"ocid1.vcn.oc1.sea.<unique_id1>;1.1.1.1\",\"ocid1.vcn.oc1.sea.<unique_id2>;1.1.0.0/16\"] For Exadata Cloud@Customer, this is an array of IP addresses or CIDR notations. Example: [\"1.1.1.1\",\"1.1.1.0/24\",\"1.1.2.25\"]

For an update operation, if you want to delete all the IPs in the ACL, use an array with a single empty string entry.

This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, adminPassword, isMTLSConnectionRequired, openMode, permissionLevel, dbWorkload, dbVersion, isRefreshable, dbName, scheduledOperations, dbToolsDetails, isLocalDataGuardEnabled, or isFreeTier.

Returns:

  • (Array<String>)


271
272
273
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 271

def standby_whitelisted_ips
  @standby_whitelisted_ips
end

#subnet_idString

The OCID of the subnet the resource is associated with.

Subnet Restrictions: - For bare metal DB systems and for single node virtual machine DB systems, do not use a subnet that overlaps with 192.168.16.16/28. - For Exadata and virtual machine 2-node RAC systems, do not use a subnet that overlaps with 192.168.128.0/20. - For Autonomous AI Database, setting this will disable public secure access to the database.

These subnets are used by the Oracle Clusterware private interconnect on the database instance. Specifying an overlapping subnet will cause the private interconnect to malfunction. This restriction applies to both the client subnet and the backup subnet.

Returns:

  • (String)


294
295
296
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 294

def subnet_id
  @subnet_id
end

#subscription_idString

The OCID of the subscription with which resource needs to be associated with.

Returns:

  • (String)


56
57
58
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 56

def subscription_id
  @subscription_id
end

#transportable_tablespaceOCI::Database::Models::ImportTransportableTablespaceDetails



430
431
432
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 430

def transportable_tablespace
  @transportable_tablespace
end

#vault_idString

The OCID of the Oracle Cloud Infrastructure vault. This parameter and secretId are required for Customer Managed Keys.

Returns:

  • (String)


163
164
165
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 163

def vault_id
  @vault_id
end

#whitelisted_ipsArray<String>

The client IP access control list (ACL). This feature is available for [Autonomous AI Database Serverless] (docs.oracle.com/en/cloud/paas/autonomous-database/index.html) and on Exadata Cloud@Customer. Only clients connecting from an IP address included in the ACL may access the Autonomous AI Database instance. If arePrimaryWhitelistedIpsUsed is 'TRUE' then Autonomous AI Database uses this primary's IP access control list (ACL) for the disaster recovery peer called standbywhitelistedips.

For Autonomous AI Database Serverless, this is an array of CIDR (classless inter-domain routing) notations for a subnet or VCN OCID (virtual cloud network Oracle Cloud ID). Multiple IPs and VCN OCIDs should be separate strings separated by commas, but if itu2019s other configurations that need multiple pieces of information then its each piece is connected with semicolon (;) as a delimiter. Example: [\"1.1.1.1\",\"1.1.1.0/24\",\"ocid1.vcn.oc1.sea.<unique_id>\",\"ocid1.vcn.oc1.sea.<unique_id1>;1.1.1.1\",\"ocid1.vcn.oc1.sea.<unique_id2>;1.1.0.0/16\"] For Exadata Cloud@Customer, this is an array of IP addresses or CIDR notations. Example: [\"1.1.1.1\",\"1.1.1.0/24\",\"1.1.2.25\"]

For an update operation, if you want to delete all the IPs in the ACL, use an array with a single empty string entry.

This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, adminPassword, isMTLSConnectionRequired, openMode, permissionLevel, dbWorkload, dbVersion, isRefreshable, dbName, scheduledOperations, dbToolsDetails, isLocalDataGuardEnabled, or isFreeTier.

Returns:

  • (Array<String>)


247
248
249
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 247

def whitelisted_ips
  @whitelisted_ips
end

Class Method Details

.attribute_mapObject

Attribute mapping from ruby-style variable name to JSON key.



433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 433

def self.attribute_map
  {
    # rubocop:disable Style/SymbolLiteral
    'subscription_id': :'subscriptionId',
    'compartment_id': :'compartmentId',
    'character_set': :'characterSet',
    'ncharacter_set': :'ncharacterSet',
    'db_name': :'dbName',
    'cpu_core_count': :'cpuCoreCount',
    'backup_retention_period_in_days': :'backupRetentionPeriodInDays',
    'compute_model': :'computeModel',
    'compute_count': :'computeCount',
    'ocpu_count': :'ocpuCount',
    'db_workload': :'dbWorkload',
    'data_storage_size_in_tbs': :'dataStorageSizeInTBs',
    'data_storage_size_in_gbs': :'dataStorageSizeInGBs',
    'is_free_tier': :'isFreeTier',
    'kms_key_id': :'kmsKeyId',
    'vault_id': :'vaultId',
    'encryption_key': :'encryptionKey',
    'admin_password': :'adminPassword',
    'display_name': :'displayName',
    'license_model': :'licenseModel',
    'byol_compute_count_limit': :'byolComputeCountLimit',
    'is_preview_version_with_service_terms_accepted': :'isPreviewVersionWithServiceTermsAccepted',
    'is_auto_scaling_enabled': :'isAutoScalingEnabled',
    'is_dev_tier': :'isDevTier',
    'is_dedicated': :'isDedicated',
    'autonomous_container_database_id': :'autonomousContainerDatabaseId',
    'in_memory_percentage': :'inMemoryPercentage',
    'is_access_control_enabled': :'isAccessControlEnabled',
    'whitelisted_ips': :'whitelistedIps',
    'are_primary_whitelisted_ips_used': :'arePrimaryWhitelistedIpsUsed',
    'standby_whitelisted_ips': :'standbyWhitelistedIps',
    'is_data_guard_enabled': :'isDataGuardEnabled',
    'is_local_data_guard_enabled': :'isLocalDataGuardEnabled',
    'subnet_id': :'subnetId',
    'nsg_ids': :'nsgIds',
    'private_endpoint_label': :'privateEndpointLabel',
    'freeform_tags': :'freeformTags',
    'defined_tags': :'definedTags',
    'security_attributes': :'securityAttributes',
    'private_endpoint_ip': :'privateEndpointIp',
    'db_version': :'dbVersion',
    'source': :'source',
    'customer_contacts': :'customerContacts',
    'is_mtls_connection_required': :'isMtlsConnectionRequired',
    'resource_pool_leader_id': :'resourcePoolLeaderId',
    'resource_pool_summary': :'resourcePoolSummary',
    'autonomous_maintenance_schedule_type': :'autonomousMaintenanceScheduleType',
    'autonomous_database_maintenance_window': :'autonomousDatabaseMaintenanceWindow',
    'scheduled_operations': :'scheduledOperations',
    'is_auto_scaling_for_storage_enabled': :'isAutoScalingForStorageEnabled',
    'database_edition': :'databaseEdition',
    'db_tools_details': :'dbToolsDetails',
    'is_backup_retention_locked': :'isBackupRetentionLocked',
    'secret_id': :'secretId',
    'secret_version_number': :'secretVersionNumber',
    'transportable_tablespace': :'transportableTablespace'
    # rubocop:enable Style/SymbolLiteral
  }
end

.get_subtype(object_hash) ⇒ Object

Given the hash representation of a subtype of this class, use the info in the hash to return the class of the subtype.



565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 565

def self.get_subtype(object_hash)
  type = object_hash[:'source'] # rubocop:disable Style/SymbolLiteral

  return 'OCI::Database::Models::UndeleteAutonomousDatabaseDetails' if type == 'UNDELETE_ADB'
  return 'OCI::Database::Models::CreateAutonomousDatabaseCloneDetails' if type == 'DATABASE'
  return 'OCI::Database::Models::CreateRefreshableAutonomousDatabaseCloneDetails' if type == 'CLONE_TO_REFRESHABLE'
  return 'OCI::Database::Models::CreateAutonomousDatabaseFromBackupDetails' if type == 'BACKUP_FROM_ID'
  return 'OCI::Database::Models::CreateCrossRegionDisasterRecoveryDetails' if type == 'CROSS_REGION_DISASTER_RECOVERY'
  return 'OCI::Database::Models::CreateAutonomousDatabaseFromBackupTimestampDetails' if type == 'BACKUP_FROM_TIMESTAMP'
  return 'OCI::Database::Models::CreateCrossTenancyDisasterRecoveryDetails' if type == 'CROSS_TENANCY_DISASTER_RECOVERY'
  return 'OCI::Database::Models::CreateCrossRegionAutonomousDatabaseDataGuardDetails' if type == 'CROSS_REGION_DATAGUARD'
  return 'OCI::Database::Models::CreateAutonomousDatabaseDetails' if type == 'NONE'

  # TODO: Log a warning when the subtype is not found.
  'OCI::Database::Models::CreateAutonomousDatabaseBase'
end

.swagger_typesObject

Attribute type mapping.



497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 497

def self.swagger_types
  {
    # rubocop:disable Style/SymbolLiteral
    'subscription_id': :'String',
    'compartment_id': :'String',
    'character_set': :'String',
    'ncharacter_set': :'String',
    'db_name': :'String',
    'cpu_core_count': :'Integer',
    'backup_retention_period_in_days': :'Integer',
    'compute_model': :'String',
    'compute_count': :'Float',
    'ocpu_count': :'Float',
    'db_workload': :'String',
    'data_storage_size_in_tbs': :'Integer',
    'data_storage_size_in_gbs': :'Integer',
    'is_free_tier': :'BOOLEAN',
    'kms_key_id': :'String',
    'vault_id': :'String',
    'encryption_key': :'OCI::Database::Models::AutonomousDatabaseEncryptionKeyDetails',
    'admin_password': :'String',
    'display_name': :'String',
    'license_model': :'String',
    'byol_compute_count_limit': :'Float',
    'is_preview_version_with_service_terms_accepted': :'BOOLEAN',
    'is_auto_scaling_enabled': :'BOOLEAN',
    'is_dev_tier': :'BOOLEAN',
    'is_dedicated': :'BOOLEAN',
    'autonomous_container_database_id': :'String',
    'in_memory_percentage': :'Integer',
    'is_access_control_enabled': :'BOOLEAN',
    'whitelisted_ips': :'Array<String>',
    'are_primary_whitelisted_ips_used': :'BOOLEAN',
    'standby_whitelisted_ips': :'Array<String>',
    'is_data_guard_enabled': :'BOOLEAN',
    'is_local_data_guard_enabled': :'BOOLEAN',
    'subnet_id': :'String',
    'nsg_ids': :'Array<String>',
    'private_endpoint_label': :'String',
    'freeform_tags': :'Hash<String, String>',
    'defined_tags': :'Hash<String, Hash<String, Object>>',
    'security_attributes': :'Hash<String, Hash<String, Object>>',
    'private_endpoint_ip': :'String',
    'db_version': :'String',
    'source': :'String',
    'customer_contacts': :'Array<OCI::Database::Models::CustomerContact>',
    'is_mtls_connection_required': :'BOOLEAN',
    'resource_pool_leader_id': :'String',
    'resource_pool_summary': :'OCI::Database::Models::ResourcePoolSummary',
    'autonomous_maintenance_schedule_type': :'String',
    'autonomous_database_maintenance_window': :'OCI::Database::Models::AutonomousDatabaseMaintenanceWindowSummary',
    'scheduled_operations': :'Array<OCI::Database::Models::ScheduledOperationDetails>',
    'is_auto_scaling_for_storage_enabled': :'BOOLEAN',
    'database_edition': :'String',
    'db_tools_details': :'Array<OCI::Database::Models::DatabaseTool>',
    'is_backup_retention_locked': :'BOOLEAN',
    'secret_id': :'String',
    'secret_version_number': :'Integer',
    'transportable_tablespace': :'OCI::Database::Models::ImportTransportableTablespaceDetails'
    # rubocop:enable Style/SymbolLiteral
  }
end

Instance Method Details

#==(other) ⇒ Object

Checks equality by comparing each attribute.

Parameters:

  • other (Object)

    the other object to be compared



1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 1040

def ==(other)
  return true if equal?(other)

  self.class == other.class &&
    subscription_id == other.subscription_id &&
    compartment_id == other.compartment_id &&
    character_set == other.character_set &&
    ncharacter_set == other.ncharacter_set &&
    db_name == other.db_name &&
    cpu_core_count == other.cpu_core_count &&
    backup_retention_period_in_days == other.backup_retention_period_in_days &&
    compute_model == other.compute_model &&
    compute_count == other.compute_count &&
    ocpu_count == other.ocpu_count &&
    db_workload == other.db_workload &&
    data_storage_size_in_tbs == other.data_storage_size_in_tbs &&
    data_storage_size_in_gbs == other.data_storage_size_in_gbs &&
    is_free_tier == other.is_free_tier &&
    kms_key_id == other.kms_key_id &&
    vault_id == other.vault_id &&
    encryption_key == other.encryption_key &&
    admin_password == other.admin_password &&
    display_name == other.display_name &&
    license_model == other.license_model &&
    byol_compute_count_limit == other.byol_compute_count_limit &&
    is_preview_version_with_service_terms_accepted == other.is_preview_version_with_service_terms_accepted &&
    is_auto_scaling_enabled == other.is_auto_scaling_enabled &&
    is_dev_tier == other.is_dev_tier &&
    is_dedicated == other.is_dedicated &&
    autonomous_container_database_id == other.autonomous_container_database_id &&
    in_memory_percentage == other.in_memory_percentage &&
    is_access_control_enabled == other.is_access_control_enabled &&
    whitelisted_ips == other.whitelisted_ips &&
    are_primary_whitelisted_ips_used == other.are_primary_whitelisted_ips_used &&
    standby_whitelisted_ips == other.standby_whitelisted_ips &&
    is_data_guard_enabled == other.is_data_guard_enabled &&
    is_local_data_guard_enabled == other.is_local_data_guard_enabled &&
    subnet_id == other.subnet_id &&
    nsg_ids == other.nsg_ids &&
    private_endpoint_label == other.private_endpoint_label &&
    freeform_tags == other.freeform_tags &&
    defined_tags == other.defined_tags &&
    security_attributes == other.security_attributes &&
    private_endpoint_ip == other.private_endpoint_ip &&
    db_version == other.db_version &&
    source == other.source &&
    customer_contacts == other.customer_contacts &&
    is_mtls_connection_required == other.is_mtls_connection_required &&
    resource_pool_leader_id == other.resource_pool_leader_id &&
    resource_pool_summary == other.resource_pool_summary &&
    autonomous_maintenance_schedule_type == other.autonomous_maintenance_schedule_type &&
    autonomous_database_maintenance_window == other.autonomous_database_maintenance_window &&
    scheduled_operations == other.scheduled_operations &&
    is_auto_scaling_for_storage_enabled == other.is_auto_scaling_for_storage_enabled &&
    database_edition == other.database_edition &&
    db_tools_details == other.db_tools_details &&
    is_backup_retention_locked == other.is_backup_retention_locked &&
    secret_id == other.secret_id &&
    secret_version_number == other.secret_version_number &&
    transportable_tablespace == other.transportable_tablespace
end

#build_from_hash(attributes) ⇒ Object

Builds the object from hash

Parameters:

  • attributes (Hash)

    Model attributes in the form of hash

Returns:

  • (Object)

    Returns the model itself



1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 1125

def build_from_hash(attributes)
  return nil unless attributes.is_a?(Hash)

  self.class.swagger_types.each_pair do |key, type|
    if type =~ /^Array<(.*)>/i
      # check to ensure the input is an array given that the the attribute
      # is documented as an array but the input is not
      if attributes[self.class.attribute_map[key]].is_a?(Array)
        public_method("#{key}=").call(
          attributes[self.class.attribute_map[key]]
            .map { |v| OCI::Internal::Util.convert_to_type(Regexp.last_match(1), v) }
        )
      end
    elsif !attributes[self.class.attribute_map[key]].nil?
      public_method("#{key}=").call(
        OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]])
      )
    end
    # or else data not found in attributes(hash), not an issue as the data can be optional
  end

  self
end

#eql?(other) ⇒ Boolean

Parameters:

  • other (Object)

    the other object to be compared

Returns:

  • (Boolean)

See Also:

  • `==` method


1105
1106
1107
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 1105

def eql?(other)
  self == other
end

#hashFixnum

Calculates hash code according to all attributes.

Returns:

  • (Fixnum)

    Hash code



1114
1115
1116
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 1114

def hash
  [subscription_id, compartment_id, character_set, ncharacter_set, db_name, cpu_core_count, backup_retention_period_in_days, compute_model, compute_count, ocpu_count, db_workload, data_storage_size_in_tbs, data_storage_size_in_gbs, is_free_tier, kms_key_id, vault_id, encryption_key, admin_password, display_name, license_model, byol_compute_count_limit, is_preview_version_with_service_terms_accepted, is_auto_scaling_enabled, is_dev_tier, is_dedicated, autonomous_container_database_id, in_memory_percentage, is_access_control_enabled, whitelisted_ips, are_primary_whitelisted_ips_used, standby_whitelisted_ips, is_data_guard_enabled, is_local_data_guard_enabled, subnet_id, nsg_ids, private_endpoint_label, freeform_tags, defined_tags, security_attributes, private_endpoint_ip, db_version, source, customer_contacts, is_mtls_connection_required, resource_pool_leader_id, resource_pool_summary, autonomous_maintenance_schedule_type, autonomous_database_maintenance_window, scheduled_operations, is_auto_scaling_for_storage_enabled, database_edition, db_tools_details, is_backup_retention_locked, secret_id, secret_version_number, transportable_tablespace].hash
end

#to_hashHash

Returns the object in the form of hash

Returns:

  • (Hash)

    Returns the object in the form of hash



1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 1158

def to_hash
  hash = {}
  self.class.attribute_map.each_pair do |attr, param|
    value = public_method(attr).call
    next if value.nil? && !instance_variable_defined?("@#{attr}")

    hash[param] = _to_hash(value)
  end
  hash
end

#to_sString

Returns the string representation of the object

Returns:

  • (String)

    String presentation of the object



1152
1153
1154
# File 'lib/oci/database/models/create_autonomous_database_base.rb', line 1152

def to_s
  to_hash.to_s
end